Консультация № 194129
08.12.2018, 12:08
0.00 руб.
0 3 1
Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос: Программа для транспонирования матрицы с++.

Обсуждение

давно
Советник
400484
472
11.12.2018, 17:26
общий
Добрый день,
Вот возможный вариант.
Код:

#include <iostream>
#include <conio.h> // библиотека, необходимая для работы оператора getch();

int main()
{
const int col = 3;
const int rev = 2;
int array[col][rev] = { { 0, 2 },
{ 1, 2 },
{ 3, 4 } };

std::cout << "Initial array:" << std::endl;
for (int i = 0; i < col; i++)
{
for (int j = 0; j < rev; j++)
{
std::cout << array[i][j] << "\t";
}
std::cout << std::endl;
}

int arrayT[rev][col];

for (int i = 0; i < col; i++)
{
for (int j = 0; j < rev; j++)
{
arrayT[j][i] = array[i][j];
}
}

std::cout << std::endl;
std::cout << "Transposed array:" << std::endl;
for (int i = 0; i < rev; i++)
{
for (int j = 0; j < col; j++)
{
std::cout << arrayT[i][j] << "\t";
}
std::cout << std::endl;
}

getch();
return 0;
}
давно
Посетитель
402526
4
11.12.2018, 17:45
общий
Адресаты:
Огромное спасибо!!!!!
давно
Советник
400484
472
11.12.2018, 18:18
общий
это ответ
Здравствуйте, soloveujenya!
Вот вариант решения:
Код:

#include <iostream>
#include <conio.h> // библиотека, необходимая для работы оператора getch();

int main()
{
const int col = 3;
const int rev = 2;
int array[col][rev] = { { 0, 2 },
{ 1, 2 },
{ 3, 4 } };

std::cout << "Initial array:" << std::endl;
for (int i = 0; i < col; i++)
{
for (int j = 0; j < rev; j++)
{
std::cout << array[i][j] << "\t";
}
std::cout << std::endl;
}

int arrayT[rev][col];

for (int i = 0; i < col; i++)
{
for (int j = 0; j < rev; j++)
{
arrayT[j][i] = array[i][j];
}
}

std::cout << std::endl;
std::cout << "Transposed array:" << std::endl;
for (int i = 0; i < rev; i++)
{
for (int j = 0; j < col; j++)
{
std::cout << arrayT[i][j] << "\t";
}
std::cout << std::endl;
}

getch();
return 0;
}


результат работы:
Код:

Initial array:
0 2
1 2
3 4

Transposed array:
0 1 3
2 2 4
Форма ответа