Advertisement
rotti321

Spirala /rotire 90/ oglindire matrice

Apr 11th, 2018
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.27 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. using namespace std;
  4. ifstream fin("spirala.in");
  5. ofstream fout("spirala.out");
  6. int n,a[101][101],b[101][101];
  7. int main()
  8. {
  9.     fin>>n;
  10.     for(int i=1;i<=n;i++){
  11.         for(int j=1;j<=n;j++){
  12.             fin>>a[i][j];
  13.             ///rotirea cu 90 grade invers acelor de ceasornic
  14.             b[n-j+1][i]=a[i][j];
  15.         }
  16.     }
  17.     ///afisarea matricei rotite cu 90 grade
  18.     for(int i=1;i<=n;i++){
  19.         for(int j=1;j<=n;j++){
  20.             fout<<b[i][j]<<" ";
  21.         }
  22.         fout<<endl;
  23.     }
  24.     fout<<endl;
  25.     ///matricea in oglinda
  26.     for(int i=1;i<=n;i++){
  27.         for(int j=n;j>=1;j--){
  28.             fout<<a[i][j]<<" ";
  29.         }
  30.         fout<<endl;
  31.     }
  32.     ///desfasurarea spiralei
  33.     for(int k=1;k<=n/2;k++){
  34.         ///prima linie
  35.         for(int j=k;j<=n-k;j++){
  36.             fout<<a[k][j]<<" ";
  37.         }
  38.         ///fout<<" # ";
  39.  
  40.         ///ultima col
  41.         for(int i=k;i<=n-k;i++){
  42.             fout<<a[i][n-k+1]<<" ";
  43.         }
  44.         ///fout<<" $ ";
  45.  
  46.  
  47.         ///ultima lin
  48.         for(int j=n-k+1;j>k;j--){
  49.             fout<<a[n-k+1][j]<<" ";
  50.         }
  51.         ///prima coloana
  52.         for(int i=n-k+1;i>k;i--){
  53.             fout<<a[i][k]<<" ";
  54.         }
  55.     }
  56.  
  57.     return 0;
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement