Advertisement
Guest User

kod

a guest
Jan 20th, 2017
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. void czytaj_n(int*n);
  4. void czytaj_tab(int*t, int n);
  5. void drukuj_tab(int*t, int n);
  6. int minimum(int*t, int n);
  7. int maksimum(int*t, int n);
  8. double srednia(int*t, int n);
  9. int suma(int*t, int n);
  10. int *czytaj_do_0(int*n);
  11. int main()
  12. {
  13.     int *tab = NULL, n;
  14. //  double sr;
  15.     char z;
  16.     while (1)
  17.     {
  18.         printf("c-czytaj tablice\n");
  19.         printf("d-drukuj tablice\n");
  20.         printf("m-minimum\n");
  21.         printf("n-maksimum\n");
  22.         printf("s-srednia\n");
  23.         printf("w-suma\n");
  24.         printf("z-czytaj do zera\n");
  25.         printf("o-czyszczenie\n");
  26.         printf("q-wyjscie\n");
  27.         scanf("%c", &z);
  28.         switch (z)
  29.         {
  30.         case'c':czytaj_n(&n);
  31.             tab = (int*)malloc(n * sizeof(int));
  32.             czytaj_tab(tab, n);
  33.             break;
  34.         case 'd': drukuj_tab(tab, n);
  35.             break;
  36.         case 'm':  printf("Wartosc minimalna z tablicy: %i\n", minimum(tab, n));;
  37.             break;
  38.         case 'n': printf("Wartosc maksymalna z tablicy: %i\n", maksimum(tab, n));
  39.             break;
  40.         case 's': printf("Wartosc srednia z tablicy: %g\n", srednia(tab, n));
  41.             break;
  42.         case 'w': printf("suma: %i\n", suma(tab, n));
  43.             break;
  44.         case 'o': system("cls"); break;
  45.         case 'z': tab = czytaj_do_0(&n); break; system("cls");
  46.         case 'q': return;
  47.         }
  48.     }
  49.  
  50.     return 0;
  51. }
  52.  
  53. void czytaj_n(int *n)
  54. {
  55.     printf("Podaj rozmiar tablicy: "); scanf("%d", n);
  56. }
  57. void czytaj_tab(int*t, int n)
  58. {
  59.     int i;
  60.     printf("podaj elemnty tablicy:\n");
  61.     for (i = 0; i<n; i++)
  62.     {
  63.         printf("[%d]", i);
  64.         scanf("%d", t + i);
  65.     }
  66. }
  67. void drukuj_tab(int*t, int n)
  68. {
  69.     int i;
  70.     printf("wczytane elementy tablicy : \n");
  71.     for (i = 0; i<n; i++)
  72.     {
  73.         printf("[%d]=%d\n", i, *(t + i));
  74.     }
  75. }
  76. int minimum(int*t, int n)
  77. {
  78.     int i, m = *t;
  79.     for (i = 1; i<n; i++)
  80.     {
  81.         if (*(t + i)<m)
  82.             m = *(t + i);
  83.     }
  84.     return m;
  85. }
  86. int maksimum(int*t, int n)
  87. {
  88.     int i, m = *t;
  89.     for (i = 1; i<n; i++)
  90.     {
  91.         if (*(t + i)>m)
  92.             m = *(t + i);
  93.     }
  94.     return m;
  95. }
  96. double srednia(int*t, int n)
  97. {
  98.  
  99.     int i, suma;
  100.     suma = 0;
  101.     for (i = 0; i<n; i++)
  102.     {
  103.         suma += (*(t + i));
  104.     }
  105.     return (double)suma / n;
  106.  
  107. }
  108. int *czytaj_do_0(int*n)
  109. {
  110.     int * t = NULL;
  111.     int c;
  112.     int i = 0;
  113.     do {
  114.         printf("Liczba = ");
  115.         scanf("%d", &c);
  116.         if (c == 0) break;
  117.         else
  118.         {
  119.             t = (int *)realloc(t, (i + 1) * sizeof(int));
  120.             *(t + 1) = c;
  121.             i++;
  122.         }
  123.  
  124.     } while (1);
  125.  
  126.     *n = i;
  127.     return t;
  128. }
  129. int suma(int*t, int n)
  130. {
  131.  
  132.     int i, suma;
  133.     suma = 0;
  134.     for (i = 0; i<n; i++)
  135.     {
  136.         suma += (*(t + i));
  137.     }
  138.     return suma;
  139. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement