Ребят помоги пожалуйста решить задачку на C++.

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

2

Ответы и объяснения

Лучший Ответ!
  • Участник Знаний
2013-06-19T15:12:47+00:00

#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;
}

  • Участник Знаний
2013-06-19T16:22:52+00:00

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;