Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Boundary control No. 2
- #include <stdlib.h>
- #include <stdio.h>
- #define SIZEM 10
- //main i=j
- //secondary i+j=SIZEM-1
- void f_mass(int a[][SIZEM])
- {
- for (int i = 0; i < SIZEM; i++)
- for (int j = 0; j < SIZEM; j++)
- a[i][j] = rand() % 15 + 1; // [1;15]
- }
- void out_mass(int a[][SIZEM])
- {
- for (int i = 0; i < SIZEM; i++, printf("\n"))
- for (int j = 0; j < SIZEM; j++)
- printf("%2d ", a[i][j]);
- printf("\n");
- }
- void reverse_mass(int a[][SIZEM])
- {
- for (int j = 0; j < SIZEM / 2; j++)//Only left part
- for (int i = (j + 1); i < (SIZEM - (j + 1)); i++)//above the main, under the side
- {
- //swap
- int temp = a[i][j];
- a[i][j] = a[SIZEM - (i + 1)][SIZEM - (j + 1)];
- a[SIZEM - (i + 1)][SIZEM - (j + 1)] = temp;
- }
- }
- int find_max_up(int a[][SIZEM])
- {
- int max = 0;
- for (int i = 0; i < SIZEM / 2; i++)//Only upper part
- for (int j = (i + 1); j < (SIZEM - (i + 1)); j++)//above the main, above the side
- if (max < a[i][j])
- max = a[i][j];
- return max;
- }
- int find_max_down(int a[][SIZEM])
- {
- int max = 0;
- for (int i = SIZEM-1; i > SIZEM/2; i--)//Only left part
- for (int j = (i - 1); j > (SIZEM - (i + 1)); j--)//under the main, under the side
- if (max < a[i][j])
- max = a[i][j];
- return max;
- }
- int main()
- {
- srand(time(NULL));
- int a[SIZEM][SIZEM];
- f_mass(a);
- out_mass(a);
- reverse_mass(a);
- out_mass(a);
- printf("Upper Max: %d. Under Max: %d. \n", find_max_up(a), find_max_down(a));
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement