Не советую использовать i,j во вложенных циклах, т.к. когда-нибудь перепутаете j с i
Используйте осмысленные названия переменных.
Еще можно double[SIZE_Y][SIZE_X] вынести в отдельный тип, чтобы не запутаться в коде:
typedef double matrix[SIZE_Y][SIZE_X];
matrix myAwesomeMatrix = {{1,2,3}{4,5,6}{7,8,9}};
код#include <iostream>
#include <cmath>
const int SIZE_X = 3;
const int SIZE_Y = 3;
typedef double matrix[SIZE_Y][SIZE_X];
void transposeMatric(matrix& in, matrix& out, int size)
{
// col == column
for (int row = 0; row < size; ++row)
{
for (int col = 0; col < size; ++col)
{
out[row][col] = in[col][row];
}
}
}
int main()
{
matrix tmpUnitMatric = {{1,2,3},{4,5,6},{7,8,9}};
matrix T;
transposeMatric(tmpUnitMatric, T, SIZE_Y);
for (int row = 0; row < SIZE_Y; row++)
{
for (int col = 0; col < SIZE_X; col++)
{
std::cout << std::fixed << T[row][col] << "\t";
}
std::cout << std::endl;
}
}