Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int WypelnienieTablicy(int rozmiarTablicy, int* tablica)
- {
- for(int i = 0; i<rozmiarTablicy; i++)
- {
- if (scanf("%d", &tablica[i]) == EOF)
- {
- if (i == 0)
- exit(0);
- return rozmiarTablicy = i;
- }
- }
- }
- int LiczenieSumy(int rozmiarTablicy, int* tablica)
- {
- int suma = 0;
- for(int i = 0; i<rozmiarTablicy; i++)
- {
- suma = suma + (tablica[i]);
- }
- return suma;
- }
- int LiczenieSredniej(int suma, int rozmiarTablicy, int* tablica)
- {
- return suma / rozmiarTablicy;
- }
- void SortowanieTablicy (int rozmiarTablicy, int *tablica)
- {
- for(int i = 0; i<rozmiarTablicy; i++)
- {
- for(int j = 0; j<rozmiarTablicy; j++)
- {
- if (tablica[i]<tablica[j])
- {
- int tmp = tablica[j];
- tablica[j] = tablica[i];
- tablica[i] = tmp;
- }
- }
- }
- }
- int LiczenieMediany(int rozmiarTablicy, int* tablica)
- {
- float mediana = 0;
- SortowanieTablicy(rozmiarTablicy, tablica);
- if (rozmiarTablicy%2 == 0)
- {
- int n = rozmiarTablicy/2;
- mediana = (tablica[n]+tablica[n+1])/2;
- }
- else
- {
- int n = rozmiarTablicy/2;
- mediana = tablica[n];
- }
- return mediana;
- }
- int LiczenieDominanty(int rozmiarTablicy, int* tablica)
- {
- int tablicaWystapien[rozmiarTablicy], tablica2[rozmiarTablicy], k = 0;
- SortowanieTablicy(rozmiarTablicy, tablica);
- for(int i = 0; i<rozmiarTablicy; i++)
- {
- for(int j = 0; j<rozmiarTablicy; j++)
- {
- if(tablica[i]!=tablica2[j])
- {
- tablica2[i] = tablica[i];
- tablicaWystapien[i] = 1;
- }
- else if(tablica[i]==tablica2[j])
- {
- tablicaWystapien[j] += 1;
- }
- }
- }
- for(int i = 0; i<rozmiarTablicy; i++)
- {
- for(int j = 0; j<rozmiarTablicy; j++)
- {
- if(tablicaWystapien[i]<tablicaWystapien[j])
- k = j;
- }
- }
- return tablica2[k];
- }
- int main(void)
- {
- int rozmiarTablicy, suma = 0, dominanta;
- float mediana, srednia = 1;
- int *tablica;
- printf("Podaj rozmiar tablicy ");
- scanf("%d", &rozmiarTablicy);
- tablica = malloc(sizeof(int)*rozmiarTablicy);
- if (NULL == tablica || rozmiarTablicy < 1)
- {
- printf("Nie mozna zaalokowac tablicy\n");
- return 1;
- }
- printf("Wpisz wartosci, po każdej nacisnij enter \n");
- rozmiarTablicy = WypelnienieTablicy(rozmiarTablicy, tablica);
- suma = LiczenieSumy(rozmiarTablicy, tablica);
- srednia = LiczenieSredniej(suma, rozmiarTablicy, tablica);
- mediana = LiczenieMediany(rozmiarTablicy, tablica);
- dominanta = LiczenieDominanty(rozmiarTablicy, tablica);
- printf("%d %.2f %.2f %d %d \n", suma, srednia, mediana, dominanta, rozmiarTablicy);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement