Advertisement
Lisaveta777

Array parts

Dec 20th, 2018
213
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.55 KB | None | 0 0
  1. #include <stdio.h>
  2. #define SIZE 5 //можно вместо 5 ставить 7,9 (для консоли)
  3. //there is 8 parts of an array, and 4 functions to fill this parts.
  4. //every function fills the same quantity of elements, and each rewrites middle element
  5. //каждая из 4 функции заполняет треугольник в матрице одинакового размера, но разного
  6. //месторасположения.
  7. void pop1_arr(int s,int a[s][s]);
  8. void pop2_arr(int s,int a[s][s]);
  9. void pop3_arr(int s,int a[s][s]);
  10. void pop4_arr(int s,int a[s][s]);
  11.  
  12. void find1_element(int s,int a[s][s]);//игнорируй эту функцию,для другой задачи
  13. void pr_arr(int s,int a[s][s]);//печатает массив
  14.  
  15. int main()
  16. {
  17.     int i,j,arr[SIZE][SIZE]={0};
  18.     pop1_arr(SIZE,arr);
  19.     pr_arr(SIZE,arr);
  20.     //find1_element(SIZE,arr);
  21.     pop2_arr(SIZE,arr);
  22.     pr_arr(SIZE,arr);
  23.     pop3_arr(SIZE,arr);
  24.     pr_arr(SIZE,arr);
  25.     pop4_arr(SIZE,arr);
  26.     pr_arr(SIZE,arr);
  27.  
  28.     return 0;
  29. }
  30.  
  31. void pr_arr(int s,int a[s][s])
  32. {
  33.     int i,j;
  34.     for(i=0;i<s;i++)
  35.     {
  36.         for(j=0;j<s;j++)
  37.             printf("%d\t",a[i][j]);
  38.         printf("\n");
  39.     }
  40.     printf("\n\n");
  41.  
  42. }
  43. void find1_element(int s,int a[s][s])//тут тоже игнорируй эту функцию
  44. {
  45.     int i,j,max=0;
  46.     for(i=0;i<=s/2;i++)
  47.         for(j=i;j<s-i;j++)//was(j=step;j<s-step++;j++)
  48.             if(a[i][j]>max){ max=a[i][j];}
  49.             printf("max -%d\n",max);
  50. }
  51. void pop1_arr(int s,int a[s][s])
  52. {
  53.     int i,j,numb=100;//если здесь поставить намбер равно 1, и a[i][j]=numb; на 3 строчки
  54.     for(i=0;i<=s/2;i++)//ниже, будет очевиднее, какие именно треугольники в матрице используются
  55.         for(j=i;j<s-i;j++)//was(j=step;j<s-step++;j++)
  56.             a[i][j]=++numb;
  57. }
  58. void pop2_arr(int s,int a[s][s])
  59. {
  60.     int i,j,numb=200;
  61.     for(i=s/2;i<s;i++)
  62.         for(j=s-i-1;j<=i;j++)
  63.             a[i][j]= ++numb;
  64. }
  65. void pop3_arr(int s,int a[s][s])
  66. {
  67.     int i,j,numb=300;
  68.     for(i=0;i<s;i++)
  69.         for(j=0;j<s;j++)//
  70.             if((j<=i&&i<=s/2)||(j<=s-i-1&&i>s/2))//j<s-step WTF? j<s/2-step not working
  71.                 a[i][j]=++numb;//because i starting from s/2 here! thats why
  72. }
  73. void pop4_arr(int s,int a[s][s])
  74. {
  75.     int i,j,numb=400;
  76.     for(i=0;i<s;i++)
  77.         for(j=0;j<s;j++) //
  78.             if( (j>=s-i-1&&i<=s/2)||(j>i-1&&i>s/2) )//
  79.                 a[i][j]=++numb;
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement