Лучшие помощники
- Megamozg 2205 б
- Matalya1 1800 б
- DevAdmin 1720 б
- arkasha_bortnikov 900 б
- Dwayne_Johnson 870 б
2 апреля 2023 21:45
847
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.В чем состоит различие между ес...
Аппаратные средства персонального компьютера...
Как должен был писать образованный китаец?...
Рисунок размером 1280 на 320 пикселей занимает в памяти 350 Кбайт(без учета сжатия).Найдите максимально возможное количество цветов в палитре изображе...
История структурное программирование...