Carnby1021

wskaniki

Apr 28th, 2016
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.77 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<malloc.h>
  3. #include<stdlib.h>
  4. #include<math.h>
  5.  
  6. int suma(int *tabek,int a){
  7.     int i,suma=0;
  8.     for(i=0;i<a;i++){
  9.         suma+=*tabek;
  10.         tabek++;
  11.     }
  12.     return suma;
  13. }
  14.  
  15.  
  16. int* stworz(int *ile){
  17.     int *tab,a,i;
  18.  
  19.     do{
  20.     printf("Podaj liczbe elementow ma byc conajmniej 10 \n");
  21.     scanf_s("%d",ile);
  22.     }while(*ile<10);
  23.    
  24.     system("cls");
  25.  
  26.     tab=(int*)malloc(*ile*sizeof(int));
  27.  
  28.     for(i=0;i<*ile;i++){
  29.         printf("Podaj %d element tablicy",i+1);
  30.         scanf_s("%d",&a);
  31.         tab[i]=a;
  32.     }
  33.    
  34.     return tab;
  35. }
  36.  
  37. void wypisz(int *tab,int ile){
  38.     int i;
  39.     for(i=0;i<ile;i++){
  40.         printf("tab[%d]=%d\n",i,tab[i]);
  41.     }
  42. }
  43. double srednia(int *tab,int ile){
  44.     double srednia=0,i;
  45.     for(i=0;i<ile;i++){
  46.         srednia+=*tab;
  47.         tab++;
  48.     }
  49.     srednia=srednia/ile;
  50.  
  51.     return srednia;
  52. }
  53. void znajdzmin(int *tab,int ile){
  54.     int i,min;
  55.     min=*tab;
  56.     for(i=1;i<ile;i++){
  57.         tab++;
  58.         if(min>*tab){
  59.             min=*tab;
  60.         }
  61.     }
  62.     printf("Najmniejsza liczba tablicy to %d\n",min);
  63. }
  64. void znajdzmax(int *tab,int ile){
  65.     int i,max;
  66.     max=*tab;
  67.     for(i=1;i<ile;i++){
  68.         tab++;
  69.         if(max<*tab){
  70.             max=*tab;
  71.         }
  72.     }
  73.     printf("Najwieksza liczba tablica to %d\n",max);
  74. }
  75. int mediana(int *tab,int ile){
  76.  
  77. int i, j, temp,janar;
  78.     for (i = 0; i<ile-1; i++)
  79.         {
  80.         for (j=0; j<ile-1-i; j++)
  81.         {
  82.             if (tab[j] > tab[j+1])
  83.             {
  84.                 temp = tab[j+1];
  85.                 tab[j+1] = tab[j];
  86.                 tab[j] = temp;
  87.             }
  88.         }
  89.         }
  90.     if(ile%2==0)
  91.     {
  92.         janar=ile/2;
  93.         janar=tab[janar-1]+tab[janar];
  94.         janar=janar/2;
  95.     }
  96.     else
  97.     {
  98.         janar=ile/2;
  99.             janar=tab[janar];
  100.        
  101.     }
  102.     return janar;
  103. }
  104.  
  105. void dodaj_tablica(int *tab,int *tab1,int ile,int ile1){
  106.     int i;
  107.     if(ile!=ile1){
  108.         printf("Nie da sie dodac tablic rozne wymiary\n");
  109.         system("pause");
  110.     }
  111.     else
  112.     {
  113.     for(i=0;i<ile;i++){
  114.         *tab=*tab+*tab1;
  115.         tab++;
  116.         tab1++;
  117.     }
  118. }
  119. }
  120.  
  121. double odchylenie(int *tab,double srednia,int ile){
  122.     int i;
  123.     double wariancja=0,odchylenie=0;
  124.     for(i=0;i<ile;i++){
  125.         wariancja+=((*tab-srednia)*(*tab-srednia));
  126.         tab++;
  127.     }
  128.     wariancja=wariancja/ile;
  129.     odchylenie=sqrt(wariancja);
  130.     return odchylenie;
  131. }
  132.  
  133. int main(){
  134.     int *tab,*tab1,ile,ile1,wynik;
  135.     double wynik1,srednia1;
  136.    
  137.     tab=stworz(&ile);
  138.     system("cls");
  139.     wypisz(&tab[0],ile);
  140.     wynik=suma(&tab[0],ile);  //tab;
  141.     wynik1=srednia(tab,ile);
  142.  
  143.     printf("Suma =%d\n",wynik);
  144.     printf("Srednia =%f\n",wynik1);
  145.     znajdzmin(tab,ile);
  146.     znajdzmax(tab,ile);
  147.     wynik=mediana(&tab[0],ile);
  148.     printf("Mediana =%d\n",wynik);
  149.     srednia1=srednia(tab,ile);
  150.     wynik1=odchylenie(tab,srednia1,ile);
  151.     printf("Odchylenie = %f\n",wynik1);
  152.  
  153.  
  154.     /*wypisz(tab,ile);
  155.     printf("\n");
  156.     wypisz(tab1,ile1);
  157.     printf("\n");*/
  158.     tab1=stworz(&ile1);
  159.     dodaj_tablica(tab,tab1,ile,ile1);
  160.     printf("Dodana tablica\n");
  161.     wypisz(tab,ile);
  162.     printf("\n");
  163.  
  164.     free(tab);
  165.     free(tab1);
  166.  
  167.     system("pause");
  168. }
Add Comment
Please, Sign In to add comment