#include "pch.h" #include #define _USE_MATH_DEFINES #include #include #include int main() { using namespace std; setlocale(LC_ALL, "Russian"); long n; char ex = 'n'; do { cout << "Введите номер задания: " << endl; char task; /*cin.ignore(100, '\n');*/ cin >> task; switch (task) { case '1': { int n; cout << "Enter n: " << endl; cin >> n; double* * mas = new double*[n]; for (int i = 0; i < n; i++) mas[i] = new double[n]; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) cin >> mas[i][j]; double sum = 0; int m = 0; vector < double > mas2(m); int k = 0; for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { if (((i <= j / 2) && (j >= n / 2) && (j - i >= n / 2)) || ((i >= n / 2) && (j >= n / 2) && (j - n + i + 1 >= n / 2))) { //mas[j][i] = 1; mas2.insert(mas2.begin() + k, mas[j][i]); //mas2[k] = mas[j][i]; //sum += mas[j][i]; k++; } } } for (int i = 0; i < mas2.size(); i++) { cout << mas2[i] << " "; } cout << endl; /*for (int i = 0; i < mas2.size() - 1; i++) { sort(mas2.begin(), mas2.end()); }*/ int l = 0; for (int i = 0; i < mas2.size(); i++) { l = 0; double t; for (int j = 0; j < mas2.size(); j++) { if (mas2[i] == mas2[j]) { l++; t = mas2[i]; } } /*if (l > 1) { //далее с этого места вырезать все значения мас 2 итое for (int h = 0; h < mas2.size(); h++) { if (mas2[h] == t) { mas2.erase(mas2.begin() + h); } } sum -= l * t; }*/ if (l == 1) { sum += t; } } cout << "Your result: " << sum << endl; break; } case '2': { int n, m; cout << "Enter n, m: " << endl; cin >> n >> m; double* * mas = new double*[n]; for (int i = 0; i < n; i++) mas[i] = new double[m]; for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) cin >> mas[i][j]; //удалить память под масссив!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! int maxi, maxj; double max = mas[0][0]; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (mas[i][j] > max) { max = mas[i][j]; maxi = i; maxj = j; } } } for (int i = 0; i < maxi; i++) { for (int j = 0; j < m; j++) { int tmp = mas[maxi - i][j]; mas[maxi - i][j] = mas[maxi - i - 1][j]; mas[maxi - i - 1][j] = tmp; } } for (int i = 0; i < n; i++) { for (int j = 0; j < maxj; j++) { int tmp = mas[i][maxj - j]; mas[i][maxj - j] = mas[i][maxj - j - 1]; mas[i][maxj - j - 1] = tmp; } } cout << "Your result: " << endl; for (int i = 0; i < n; i++) { cout << endl; for (int j = 0; j < m; j++) cout << mas[i][j] << " "; } cout << endl; break; } default: {cout << "Нет такой задачи.\n"; } break; } cout << "Если вы хотите выйти, нажмите \'y\', в противном случае-любую другую клавишу" << endl; cin.ignore(100, '\n'); cin >> ex; } while (ex != 'y'); return 0; }