
Вопрос задан 24.06.2023 в 08:46.
Предмет Информатика.
Спрашивает Ляпина Марина.
C++ Транспонировать квадратную матрицуДан двумерный массив размером n×n. Транспонируйте его и
результат запишите в этот же массив (транспонированная матрица из исходной получается, если каждую строчку исходной матрицы записать в виде столбца в том же порядке). Вспомогательный массив использовать нельзя.Ввод и вывод матрицы t уже написаны, необходимо только написать трнаспонирование матрицы t.Входные данныеНа первой строке входных данных задано натуральное число n≤500. В следующих n строках задано по n натуральных чисел — элементы массива.Выходные данныеВыведите ответ на задачу.ПримерыВводВывод31 2 34 5 67 8 91 4 7 2 5 8 3 6 9using 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;}

Ответы на вопрос

Отвечает Черный Расул.
Ответ:
for (int i = 0; i < t.size(); ++i) {
for (int j = 0; j < i; ++j) {
swap(t[j][i] ,t[i][j]);
}
}
Объяснение:



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для транспонирования квадратной матрицы в том же массиве можно использовать следующий код. Вы будете перебирать элементы только в верхнем треугольнике матрицы и менять их местами с соответствующими элементами в нижнем треугольнике:
cpp#include <iostream>
#include <vector>
using namespace std;
int main() {
int n;
cin >> n;
vector<vector<int>> t(n, vector<int>(n));
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
cin >> t[i][j];
}
}
// Транспонируем матрицу
for (int i = 0; i < n; ++i) {
for (int j = i + 1; j < n; ++j) {
// Меняем элементы (i, j) и (j, i) местами
swap(t[i][j], t[j][i]);
}
}
// Выводим результат
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
cout << t[i][j] << " ";
}
cout << endl;
}
return 0;
}
Этот код сначала считывает матрицу, затем транспонирует её элементы, и наконец, выводит транспонированную матрицу в том же массиве.


Похожие вопросы
Топ вопросов за вчера в категории Информатика

Информатика 558

Информатика 33

Информатика 74

Информатика 12

Информатика 10

Информатика 33

Информатика 27
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili