Advertisement
Guest User

Kolokwium PP Grupa B

a guest
Feb 13th, 2016
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.98 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. #define ROZMIAR 5
  6.  
  7. void wypelnij(int tab[][ROZMIAR])
  8. {
  9.     srand(time(0));
  10.     int i, j;
  11.     for(i=0; i<ROZMIAR; i++)
  12.     {
  13.         for(j=0;j<ROZMIAR; j++)
  14.             tab[i][j]= -10+rand()%21;
  15.     }
  16. }
  17.  
  18. void przekatna(int tab[][ROZMIAR], int liczby[])
  19. {
  20.     int i, j;
  21.     for(i=0; i<ROZMIAR; i++)
  22.     {
  23.         j=ROZMIAR-1-i;
  24.         liczby[i] = tab[i][j];
  25.     }
  26.  
  27. }
  28.  
  29. void print_matrix(int tab[][ROZMIAR])
  30. {
  31.     int i,j;
  32.     for(i=0;i<ROZMIAR;i++)
  33.     {
  34.         for(j=0;j<ROZMIAR;j++)
  35.             printf("%4d",tab[i][j]);
  36.         puts("");
  37.     }
  38. }
  39.  
  40. void print_array(int liczby[])
  41. {
  42.     printf("\n\n");
  43.     int i;
  44.     for(i=0;i<ROZMIAR;i++)
  45.         printf("%4d",liczby[i]);
  46.     printf("\n\n");
  47.  
  48. }
  49.  
  50. void srednia(int liczby[])
  51. {
  52.     double avg;
  53.     avg = 0;
  54.     int i;
  55.     for(i=0; i<ROZMIAR; i++)
  56.         avg = avg + liczby[i];
  57.     avg=avg/5;
  58.  
  59.     printf("\nSrednia liczb znajdujacych sie na przeciwprzekatnej tablicy wynosi:\n\n %lf\n",avg);
  60.  
  61. }
  62.  
  63. void do_pliku(FILE *plik, int liczby[])
  64. {
  65.     int i;
  66.     for(i=0; i<ROZMIAR; i++)
  67.     {
  68.         fprintf(plik,"%4d",liczby[i]);
  69.     }
  70.  
  71. }
  72.  
  73. void z_pliku(FILE *plik, char liczby2[])
  74. {
  75.     rewind(plik);
  76.     printf("Dane z pliku:\n\n");
  77.     while(!feof(plik))
  78.     {
  79.         char data_from_file = fgetc(plik);
  80.         if(data_from_file!=EOF)
  81.             printf("%c",data_from_file);
  82.     }
  83.     printf("\n\n");
  84. }
  85.  
  86. int main()
  87. {
  88.     int tab[ROZMIAR][ROZMIAR];
  89.     int liczby[ROZMIAR];
  90.     char liczby2[20];
  91.     wypelnij(tab);
  92. /*    print_matrix(tab);    */                           ///dodatkowo wyswietlenie tablicy
  93.     przekatna(tab, liczby);
  94. /*    print_array(liczby);  */                           ///dodatkowo wyswietlenie przeciwprzekatnej prosto z funkcji
  95.     FILE *plik;
  96.     plik = fopen("przeciwprzekatna.txt","w+");
  97.     do_pliku(plik, liczby);
  98.     z_pliku(plik, liczby2);
  99.     fclose(plik);
  100.     srednia(liczby);
  101. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement