ivana_andreevska

Zadaca za vtor kolokvium 1

May 23rd, 2021
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.02 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. int main()
  5. {
  6.     int matrica[100][100];
  7.     int results[100][100];
  8.     int m,n;
  9.     int i,j;
  10.     int k,z;
  11.     scanf("%d%d",&m,&n);
  12.     scanf("%d%d",&k,&z);
  13.  
  14.     for(i=0;i<m;i++)
  15.     {
  16.         for(j=0;j<n;j++){
  17.             scanf("%d",&matrica[i][j]);
  18.         }
  19.     }
  20.  
  21.  
  22.     if(k>0)
  23.     {
  24.         //shift na redici nadole
  25.         for(i=0;i<m;i++)
  26.         {
  27.             for(j=0;j<n;j++)
  28.             {
  29.                 if(i<k)
  30.                 {
  31.                     results[i][j]=0;
  32.                 }
  33.                 else{
  34.                     results[i][j]=matrica[i-k][j];
  35.                 }
  36.             }
  37.         }
  38.     }
  39.     else if(k<0)
  40.     {
  41.         //shift na redici nadole
  42.         for(i=0;i<m;i++)
  43.         {
  44.             for(j=0;j<n;j++)
  45.             {
  46.                 if(i>=k*(-1)){
  47.                     //ili fabs(k)
  48.                     results[i][j]=0;
  49.                 }
  50.                 else{
  51.                     results[i][j]=matrica[i-k][j];
  52.             }
  53.         }
  54.     }
  55.    
  56.     for(i=0;i<m;i++)
  57.     {
  58.         for(j=0;j<n;j++)
  59.         {
  60.             matrica[i][j]=results[i][j];
  61.         }
  62.     }
  63.  
  64.     if(z<0)
  65.     {
  66.         //shift na koloni na levo
  67.         for(i=0;i<m;i++)
  68.         {
  69.             for(j=0;j<n;j++)
  70.             {
  71.                 if(j>=z*(-1))
  72.                 {
  73.                     results[i][j]=0;
  74.                 }else{
  75.                     results[i][j]=matrica[i][j-z];
  76.                 }
  77.             }
  78.         }
  79.  
  80.     }
  81.     else if(z>0)
  82.     {
  83.         //shift na koloni na desno
  84.         for(i=0;i<m;i++)
  85.         {
  86.             for(j=0;j<n;j++)
  87.             {
  88.                 if(j<z){
  89.                     results[i][j]=0;
  90.                 }else{
  91.                     results[i][j]=matrica[i][j-z];
  92.                 }
  93.             }
  94.         }
  95.     }
  96. }
  97.     for(i=0;i<m;i++)
  98.     {
  99.         for(j=0;j<n;j++){
  100.             printf("%d ",results[i][j]);
  101.         }
  102.         printf("\n");
  103.     }
  104.  
  105.  return 0;
  106.  
  107.  }
  108.  
Advertisement
Add Comment
Please, Sign In to add comment