Advertisement
msergio95

Finish 03.07.15

Jul 7th, 2015
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.39 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #define MAX 20
  5. void generamatr(int m[MAX][MAX],int r,int col);
  6. void stampamatr(int m[MAX][MAX], int r1, int r2, int c1,int c2);
  7. void sottomatr(int m[MAX][MAX],int n,int k);
  8. int main(){
  9.     int m[MAX][MAX];int n,k;
  10.    do{ printf("n:\t");
  11.     scanf("%d",&n);
  12.     printf("k:\t");
  13.     scanf("%d",&k);
  14.     }while(k>=n);
  15.         generamatr(m,n,n);
  16.         stampamatr(m,0,n,0,n);
  17.         sottomatr(m,n,k);
  18.  
  19.     system("pause");
  20. }
  21.  
  22. void generamatr(int m[MAX][MAX],int r, int c){
  23.     int i,j;
  24.     srand(time(NULL));
  25.     for(i=0;i<r;i++){
  26.         for(j=0;j<c;j++){
  27.             m[i][j]=rand()%51;
  28.         }
  29.     }
  30.     return;
  31. }
  32.  
  33. void stampamatr(int m[MAX][MAX], int r1, int r2, int c1,int c2){
  34.     int i,j;
  35.     for(i=r1;i<r2;i++){
  36.         for(j=c1;j<c2;j++){
  37.             printf("%d\t",m[i][j]);
  38.         }
  39.         printf("\n");
  40.     }
  41.     printf("\n\n\n");
  42.     return;
  43. }
  44. void sottomatr(int m[MAX][MAX],int n,int k){
  45.     int cont,i,x,j,y;
  46.     for(i=0;i<n;i++){if((i+k)>n) break;            
  47.         for(j=0;j<n;j++){if((j+k)>n) break;        
  48.             cont=0;
  49.             for(x=i;x<k+i;x++){                    
  50.                 for(y=j;y<k+i;y++){
  51.                     cont=cont+m[x][y];
  52.                 }
  53.             }
  54.             if((cont%2)!=0){stampamatr(m,i,(k+i),j,(k+j));}
  55.             }
  56.         }
  57.     return;
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement