Лучшие помощники
- Megamozg 2180 б
- Matalya1 1800 б
- DevAdmin 1690 б
- arkasha_bortnikov 840 б
- Dwayne_Johnson 840 б
2 апреля 2023 21:45
584
C++Транспонировать квадратную матрицу
Дан двумерный массив размером n×n. Транспонируйте его и результат запишите в этот же массив (транспонированная матрица из исходной получается, если каждую строчку исходной матрицы записать в виде столбца в том же порядке). Вспомогательный массив использовать нельзя.
Ввод и вывод матрицы t уже написаны, необходимо только написать трнаспонирование матрицы t.
Входные данные
На первой строке входных данных задано натуральное число n≤500. В следующих n строках задано по n натуральных чисел — элементы массива.
Выходные данные
Выведите ответ на задачу.
Примеры
Ввод
3
1 2 3
4 5 6
7 8 9
Вывод:
1 4 7
2 5 8
3 6 9
using namespace std;
int main()
{
int n;
cin >> n;
vector > t(n, vector (n));
int i1 = 0, j1 = 0;
for (int i = 0; i < t.size(); ++i){
for (int j = 0; j < t[i].size(); ++j){
cin >> t[i][j];
}
}
***************************************************
необходимая часть кода
************************************************
for (int i = 0; i < t.size(); ++i){
for (int j = 0; j < t[i].size(); ++j){
cout << t[i][j] << " ";
}
cout << endl;
}
return 0;
}
1
ответ
Ответ:
Объяснение:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int N;
cin >> N;
vector<vector<int>> a(N,vector<int> (N,0));
for (int i = 0; i < N; i++)
for (int j = 0; j < N; j++)
cin>> a[i][j];
for (int i = 0; i < N; i++) {
for (int j = i; j < N; j++)
swap(a[j][i], a[i][j]);
}
cout << endl;
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++)
cout << a[i][j] << " ";
cout << endl;
}
return 0;
}
Объяснение:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int N;
cin >> N;
vector<vector<int>> a(N,vector<int> (N,0));
for (int i = 0; i < N; i++)
for (int j = 0; j < N; j++)
cin>> a[i][j];
for (int i = 0; i < N; i++) {
for (int j = i; j < N; j++)
swap(a[j][i], a[i][j]);
}
cout << endl;
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++)
cout << a[i][j] << " ";
cout << endl;
}
return 0;
}
0
·
Хороший ответ
4 апреля 2023 21:45
Остались вопросы?
Еще вопросы по категории Информатика
Отметьте верные утверждения. 1. Розу ветров можно построить с помощью лепестковой диаграммы. 2. У лепестковой диаграммы оси берут начало из нижнего л...
в одной из кодировок юникод каждый символ кодируется 16 битами Вова написал текст: (в нем нет лишних пробелов):бор, азот, гелий, натрий, водород-химич...
Старший помощник лом оказался старательным учеником чтобы порадовать капитана Врунгеля он выучил морскую Семафорная Азбука которой каждая буква кодиру...
Какие имена переменных недопустимы в языке Python: *несколько правильных ответов olga n 2@ $...
два прямоугольника, расположенные в первом квадранте, со сторонами, параллельными осям координат, заданы координатами своих левого верхнего и правого...
Все предметы