Лучшие помощники
- Megamozg 2205 б
- Matalya1 1800 б
- DevAdmin 1720 б
- arkasha_bortnikov 900 б
- Dwayne_Johnson 870 б
2 апреля 2023 21:45
743
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 Кбайт сколько байт,бит...
Выберите фрагмент программы для определения: По введенному номеру цвета от 1 до 7 ввести его название в радуге, если введена другая цифра, то выдать с...
Что такое знак?информатика...
Какие элементы базы данных могут изменяться пользователем?  1. поля  2. записи  3. индексы  4. ключи  5. связи таблиц...
Укажите ячейку, адрес которой является относительным: 2. Е$5 3. $А$2 4. $С4...