Лучшие помощники
- Megamozg 2170 б
- Matalya1 1800 б
- DevAdmin 1685 б
- arkasha_bortnikov 775 б
- Dwayne_Johnson 755 б
2 апреля 2023 03:21
693
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 03:21
Остались вопросы?
Еще вопросы по категории Информатика
Недавно Влад победил на олимпиаде и выиграл современный квадрокоптер — дрон. Влад прикрутил к квадрокоптеру камеру, поднял его в воздух и начал фотогр...
Цвет пикселя на экране монитора формируется из следующих базовых цветов: а) красного, синего, зеленого б) красного, яжёлтого, синего в) жёлтого, голуб...
Объём сообщения, содержащего 11264 символа, равен 11 Кбайт. Определите максимальную мощность алфавита, который мог быть использован для кодирования эт...
Что делает данный фрагмент в программе?...
Обмен информацией между компьютерными сетями, в которых действуют разные сетевые протоколы, осуществляется с использованием: шлюзов файл-серверов...