
Ребят помоги пожалуйста решить задачку на C++. Транспонировать матрицу A размером M×N. Результатом
транспонирования матрицы A размером M×N является матрица B размером N×M полученная из исходной матрицы заменой строк на столбцы

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

int **arr, N, M;
cout << "N : ";
cin >> N;
cout << "M : ";
cin >> M;
arr = new int *[N];
for(int i = 0; i < M ; i++)
arr[i] = new int [M];
for(int i = 0; i < N ; i++)
for(int j = 0; j < M ; j++)
arr[i][j] = rand() % 150;
cout << "your array : " << endl;
for(int i = 0; i < N ; i++){
for(int j = 0; j < M ; j++)
cout << arr[i][j] << "\t";
cout << endl;
}
cout << "your NEW array : " << endl;
for(int i = 0; i < N ; i++){
for(int j = 0; j < M ; j++)
cout << arr[j][i] << "\t";
cout << endl;



#include<iostream>
#include<ctime>
using namespace std;
int main(){
srand(time(NULL));
int **arr, N, M;
cout << "N : ";
cin >> N;
cout << "M : ";
cin >> M;
arr = new int *[N];
for(int i = 0; i < M ; i++)
arr[i] = new int [M];
for(int i = 0; i < N ; i++)
for(int j = 0; j < M ; j++)
arr[i][j] = rand() % 150;
cout << "your array : " << endl;
for(int i = 0; i < N ; i++){
for(int j = 0; j < M ; j++)
cout << arr[i][j] << "\t";
cout << endl;
}
cout << "your NEW array : " << endl;
for(int i = 0; i < N ; i++){
for(int j = 0; j < M ; j++)
cout << arr[j][i] << "\t";
cout << endl;
}
cout << endl;
}



Конечно, я помогу вам написать программу на C++ для транспонирования матрицы. Пример кода приведен ниже:
```cpp
#include
int main() { // Введите размеры матрицы int M, N; cout << "Введите количество строк M: "; cin >> M; cout << "Введите количество столбцов N: "; cin >> N;
// Создайте матрицу A размером M x N int A[M][N];
// Введите элементы матрицы A cout << "Введите элементы матрицы A:" << endl; for (int i = 0; i < M; ++i) { for (int j = 0; j < N; ++j) { cout << "A[" << i + 1 << "][" << j + 1 << "]: "; cin >> A[i][j]; } }
// Создайте матрицу B размером N x M для результата транспонирования int B[N][M];
// Транспонируйте матрицу A и запишите результат в матрицу B for (int i = 0; i < M; ++i) { for (int j = 0; j < N; ++j) { B[j][i] = A[i][j]; } }
// Выведите исходную матрицу A cout << "Исходная матрица A:" << endl; for (int i = 0; i < M; ++i) { for (int j = 0; j < N; ++j) { cout << A[i][j] << "\t"; } cout << endl; }
// Выведите транспонированную матрицу B cout << "Транспонированная матрица B:" << endl; for (int i = 0; i < N; ++i) { for (int j = 0; j < M; ++j) { cout << B[i][j] << "\t"; } cout << endl; }
return 0; } ```
Программа запрашивает у пользователя количество строк и столбцов матрицы A, затем вводит элементы матрицы A. После этого она создает матрицу B и записывает в нее результат транспонирования матрицы A. Наконец, программа выводит исходную матрицу A и транспонированную матрицу B.


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