2 / 1 / 1
Регистрация: 16.10.2018
Сообщений: 9
|
||||||
1 | ||||||
Заполнить матрицу по спирали против часовой стрелки16.11.2018, 06:33. Показов 6249. Ответов 2
помогите поменять циклы в коде и сделать такую спираль:
1 32 31 30 29 28 27 26 25 2 33 56 55 54 53 52 51 24 3 34 57 72 71 70 69 50 23 4 35 58 73 80 79 68 49 22 5 36 59 74 80 78 67 48 21 6 37 60 75 76 77 66 47 20 7 38 61 62 63 64 65 46 19 8 39 40 41 42 43 44 45 18 9 10 11 12 13 14 15 16 17 результат кода ниже: (он идет направо, мне нужно чтобы вниз)
0
|
|
16.11.2018, 06:33 | |
Ответы с готовыми решениями:
2
Вывести содержимое файла в матрицу по спирали против часовой стрелки Заполнить матрицу с середины против часовой стрелки Заполнить матрицу случайными числами. Развернуть матрицу на 90(градусов) против часовой стрелки
|
261 / 111 / 53
Регистрация: 22.01.2017
Сообщений: 448
|
||||||
16.11.2018, 08:42 | 2 | |||||
![]() Решение
luxifero, вывод обратный:
1
|
0 / 0 / 0
Регистрация: 18.04.2022
Сообщений: 2
|
|
08.05.2022, 18:22 | 3 |
Вы заполняете все равно против часовой стрелки, вот заполнение по часовой.
#include <iostream> #include <iomanip> using namespace std; int main() { setlocale(LC_ALL, "Russian"); int n; cout << "Видите размер массива:="; cin >> n ; while ((!cin) || (n < 1) ) { cout << endl << "Ошибка ввода. Повторите ввод значений" << endl; cin.clear(); cin.ignore(); cout << "Видите размер массива:="; cin >> n; } long int** matr = new long int* [n]; for (int i = 0; i < n; i++) matr[i] = new long int[n]; int i = 1, j, k, p = n / 2; for (k = 1; k <= p; k++) { for (j = k - 1; j < n - k ; j++) matr[j][k - 1] = i++; // левая for (j = k - 1; j < n - k + 1; j++) matr[n-k][j] = i++; // нижняя for (j = n - k - 1; j >= k - 1; j--) matr[j][n - k] = i++; //правая for (j = n - k - 1; j >= k ; --j) matr[k-1][j] = i++; //верхняя } //if (n % 2 == 1) matr[p][p] = n * n;(кажется работает и без этой строчки) for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { cout << setw(4) << matr[i][j]; } cout << endl; } }
0
|
08.05.2022, 18:22 | |
Помогаю со студенческими работами здесь
3
Повернуть матрицу с случайными числами на 90 градусов против часовой стрелки Повернуть матрицу на 180 градусов против часовой стрелки, не создавая дополнительных массивов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |