Введение
В этом практическом занятии вы научитесь транспонировать матрицу на C++. Транспонирование матрицы заключается в замене строк на столбцы и столбцов на строки, что приводит к получению новой матрицы, в которой столбцы становятся строками, а строки - столбцами.
Инициализация матриц
- Объявите две матрицы 3x3,
mat1иmat2. - попросите пользователя ввести элементы матрицы с использованием
coutиcin. - Отобразите исходную матрицу
mat1с использованиемcout.
#include <iostream>
using namespace std;
int main()
{
// Инициализация матриц
int mat1[3][3], mat2[3][3];
int i, j;
// Получение элементов, введенных пользователем
cout << "Введите элементы матрицы (3x3): " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cin >> mat1[i][j];
}
}
// Отображение исходной матрицы
cout << "\nМатрица выглядит так: " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cout << mat1[i][j] << " ";
}
cout << endl;
}
return 0;
}
Транспонирование матриц
- Выполните транспонирование матрицы, поменяв местами строки и столбцы исходной матрицы.
- Сохраните результат транспонированной матрицы в
mat2.
#include <iostream>
using namespace std;
int main()
{
// Инициализация матриц
int mat1[3][3], mat2[3][3];
int i, j;
// Получение элементов, введенных пользователем
cout << "Введите элементы матрицы (3x3): " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cin >> mat1[i][j];
}
}
// Отображение исходной матрицы
cout << "\nМатрица выглядит так: " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cout << mat1[i][j] << " ";
}
cout << endl;
}
// Транспонирование матриц
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
mat2[i][j] = mat1[j][i];
}
}
// Отображение транспонированной матрицы
cout << "\nТранспонированная матрица выглядит так: " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cout << mat2[i][j] << " ";
}
cout << endl;
}
return 0;
}
Полный код
#include <iostream>
using namespace std;
int main()
{
// Инициализация матриц
int mat1[3][3], mat2[3][3];
int i, j;
// Получение элементов, введенных пользователем
cout << "Введите элементы матрицы (3x3): " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cin >> mat1[i][j];
}
}
// Отображение исходной матрицы
cout << "\nМатрица выглядит так: " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cout << mat1[i][j] << " ";
}
cout << endl;
}
// Транспонирование матриц
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
mat2[i][j] = mat1[j][i];
}
}
// Отображение транспонированной матрицы
cout << "\nТранспонированная матрица выглядит так: " << endl;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
cout << mat2[i][j] << " ";
}
cout << endl;
}
return 0;
}
Резюме
В этом практическом занятии вы узнали, как транспонировать матрицу на C++. Следуя указанным шагам, вы должны теперь лучше понять, как инициализировать и транспонировать матрицы. Транспонирование матрицы - это важная операция в линейной алгебре, и выполнение ее на C++ может помочь вам в различных вычислительных задачах.



