Advertisement
MagnusArias

Grupa 1B

Nov 20th, 2017
306
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.78 KB | None | 0 0
  1. #ifdef _MSC_VER
  2. #define _CRT_SECURE_NO_WARNINGS 1
  3. #endif
  4.  
  5. #include <stdio.h>
  6.  
  7. int main() {
  8.     int row = 0, col = 0, sum = 0, zeroCounter = 0, parityCounter = 0;
  9.     int matrix[64][64]; // wymiary nie mają większego znaczenia, bylebyś nie przekroczył ("row" albo "col" musi byc mniejsze niz 64)
  10.  
  11.     printf("podaj ilosc wierszy: ");
  12.     scanf("%i", &row);
  13.  
  14.     printf("podaj ilosc kolumn: ");
  15.     scanf("%i", &col);
  16.  
  17.     // wczytywanie elementów do macierzy
  18.     for (int i = 0; i < row; i++) {
  19.         for (int j = 0; j < col; j++) {
  20.             printf("\n[%d][%d] =  ", i, j);
  21.             scanf("%i", &matrix[i][j]);
  22.  
  23.             if ((i + j) % 2 == 0) {                     // modulo 2 sprawdza czy element jest parzysty
  24.                 if (matrix[i][j] == 0) zeroCounter++;   // jak element z wyroznionych jest rowny 0, to zwieksza licznik
  25.                 sum += matrix[i][j];                    // suma wyroznionych elementow
  26.                 parityCounter++;                        // całkowita ilosc wyroznionych elementow
  27.             }
  28.         }
  29.     }
  30.  
  31.     printf("\n\n");
  32.  
  33.     // wyswietlenie macierzy z zaznaczeniem elementow, ktorych suma indeksow jest parzysta
  34.     for (int i = 0; i < row; i++) {
  35.         for (int j = 0; j < col; j++) {
  36.             if ((i + j) % 2 == 0) printf("\t[%d]", matrix[i][j]);           // wyrozniona liczba bedzie w naiwasach [ ]
  37.             else printf("\t %d ", matrix[i][j]);                            // pozostale juz nie xD
  38.         }
  39.         printf("\n");
  40.     }
  41.  
  42.     printf("\n\n");
  43.     printf("Suma elementow parzystych indeksow: %d\n", sum);
  44.     printf("ilosc elementow parzystych indeksow: %d\n", parityCounter);
  45.     printf("Ilsoc zer w parzystych indeksach: %d\n", zeroCounter);
  46.     printf("Procent elementow roznych od zera: %.2f%%\n\n", 100.00 - ((float)zeroCounter / (float)parityCounter)*100);
  47.     // tutaj trzeba rzutowac na floata, bo jak podzielisz dwa dowolne inty to zwróci jedynie część całkowitą, a nam potrzebne są ułamki
  48.  
  49.     system("pause");
  50.     return 0;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement