ivanakarpuzova

Свртени Дијагонали - пократко

Jan 17th, 2017
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.64 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #define MAX 100
  4.  
  5. int main ()
  6. {
  7.  
  8.     int i,j,n,m, mat[100][100];
  9.     scanf("%d", &n);
  10.     int b[n][n];
  11.     for(i = 0; i < n; i++) {
  12.         for(j = 0; j < n; j++) {
  13.             scanf("%d", &mat[i][j]);
  14.             b[i][j] = mat[i][j];
  15.         }
  16.     }
  17.  
  18.     for(i = 0; i < n; i++) {
  19.         for(j = 0; j < n; j++) {
  20.            if(i == j) {                         // Ако се наоѓаш во главната дијагонала( i == j) стави ги елементите од СПОРЕДНАТА 
  21.             b[i][j] = mat[i][n-i-1];            // споредната - mat[i][n-i-1] (Се мислев мн за воа, ама коа ќе разгледаш во PDF-от има                                            
  22.            }                                //смисла
  23.            if(i + j == n-1) {               //Ако се наоѓаш во споредната (i+j == n-1) стави ги елементите од ГЛАВНАТА
  24.             b[i][j] = mat[i][n-j-1];        // ги зимам елементите од главната со - mat[i][n-j-1] (Се мислев мн и за воа, научи ги )
  25.            }
  26.  
  27.            if((i != j) && (i + j != n-1)) {    //Да не ги чепка елементите од ГЛАВНА и СПОРЕДНА дијагонала
  28.              b[i][j] = mat[n-1-i][j];       //Симетричност во однос на редови ! -отвори го PDF ќе ти стане јасно
  29.              b[n-1-i][j] = mat[i][j];      
  30.            }
  31.         }
  32.     }
  33.  
  34.     for(i = 0; i < n; i++) {
  35.         for(j = 0; j < n; j++) {
  36.             printf("%d ", b[i][j]);
  37.         }
  38.         printf("\n");
  39.     }
  40.  
  41.     return 0;
  42. }
Add Comment
Please, Sign In to add comment