ivanakarpuzova

Свртени дијагонали - подолго решение

Jan 17th, 2017
308
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.07 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.     //niza so ke mi gi sodrzi elementite od dijagonalata
  19.     int dijagonala[100];
  20.     int index = 0;
  21.     for(i = 0; i < n; i++) {
  22.         for(j = 0; j < n; j++) {
  23.            if(i == j) {                             //gi zimam elementite od glavnata dijagonala
  24.              dijagonala[index] = mat[i][j];
  25.              ++index;
  26.            }
  27.         }
  28.     }
  29.  
  30.     index = 0;
  31.     for(i = 0; i < n; i++) {
  32.         for(j = 0; j < n; j++) {                //gi stavam vo sporednata dijagonala
  33.            if(i + j == n-1) {
  34.              b[i][j] = dijagonala[index];
  35.              ++index;
  36.            }
  37.         }
  38.     }
  39.     index = 0;
  40.     for(i = 0; i < n; i++) {
  41.         for(j = 0; j < n; j++) {                //gi zimam elementite od sporednata
  42.            if(i + j == n-1) {
  43.              dijagonala[index] = mat[i][j];
  44.              ++index;
  45.            }
  46.         }
  47.     }
  48.     index = 0;
  49.     for(i = 0; i < n; i++) {
  50.         for(j = 0; j < n; j++) {
  51.            if(i == j) {                         //gi stavam vo glavnata
  52.              b[i][j] = dijagonala[index];
  53.              ++index;
  54.            }
  55.         }
  56.     }
  57.  
  58.     for(i = 0; i < n; i++) {
  59.         for(j = 0; j < n; j++) {
  60.            if(i != j && i + j != n-1) {    //Да не ги зима елементите од ГЛАВНА и СПОРЕДНА дијагонала
  61.              b[i][j] = mat[n-1-i][j];       //од матрици визуелизација - Симетричност во однос на редови
  62.              b[n-1-i][j] = mat[i][j];       //Ги менувам местата = отвори го PDF
  63.            }
  64.         }
  65.     }
  66.  
  67.     for(i = 0; i < n; i++) {
  68.         for(j = 0; j < n; j++) {
  69.             printf("%d ", b[i][j]);
  70.         }
  71.         printf("\n");
  72.     }
  73.  
  74.     return 0;
  75. }
Advertisement
Add Comment
Please, Sign In to add comment