Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- #include <iomanip>
- #include <limits.h>
- using namespace std;
- void main()
- {
- srand(time(NULL));
- setlocale(LC_ALL, "rus");
- int **a,*b, n, i, j;
- cout << "Введите n=";
- cin >> n;
- a = new int *[n];
- b = new int[2*n - 2];
- for (i = 0; i < n; i++)
- a[i] = new int[n];
- for (i = 0; i < n; i++)
- for (j = 0; j < n; j++)
- a[i][j] = rand()%100 - 50;
- for (i = 0; i < n; i++)
- {
- for (j = 0; j < n; j++)
- printf("%3d ", a[i][j]);
- cout << "\n";
- }
- cout << "\n";
- cout << "Parallel diagonals (secondary)" << endl;
- int new_n = 1;
- int q = 0;
- int max = INT_MIN;
- while (new_n < n)
- {
- for (int i = 0; i<new_n; i++)
- for (int j = 0; j<new_n; j++)
- if ((i == new_n - j - 1) && (a[i][j] >= max)) max = a[i][j];
- b[q] = max;
- new_n++;
- q++;
- max = INT_MIN;
- }
- max = INT_MIN;
- new_n = 1;
- while (new_n <= n-1)
- {
- for (int i = n - 1; i>0; i--)
- for (int j = n - 1; j>0; j--)
- if ((i == new_n - j - 1) && (a[n - i][n - j] >= max)) max = a[n - i][n - j];
- b[q]= max;
- new_n++;
- q++;
- max = INT_MIN;
- }
- for (i = 0; i < 2*n-2; i++)
- cout << b[i]<<" ";
- system("pause");
- /*while (new_n < n)
- {
- for (int i = 0; i<new_n; i++)
- for (int j = 0; j<new_n; j++)
- if (i == new_n - j - 1) cout << setw(new_n - i) << a[i][j] << endl;
- new_n++;
- }
- new_n = 1;
- while (new_n <= n + 1)
- {
- for (int i = n - 1; i>0; i--)
- for (int j = n - 1; j>0; j--)
- if (i == new_n - j - 1) cout << setw(n + i - j) << a[n - i][n - j] << endl;
- new_n++;
- }*/
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement