他の人が行ったのと同じように、Microsoft Visual Studio 2010 でこのプログラムを実行しましたが、結果の製品マトリックスを確認すると、マトリックスの最初の行は正しいですが、マトリックスの下の他の 2 行は間違っています。
だから、この間違った行列を見ています
5.3 23.9 24
-9.25596e+061 56.3 60.2
416 497.1 2980.9
私のプログラムが見るべき正解/マトリックスは
5.3 23.9 24
11.6 56.3 58.2
17.9 88.7 92.4
私はこのmatrix1を掛けているので
1 2 3
4 5 6
7 8 9
このmatrix2によって
0 2 4
1 4.5 2.2
1.1 4.3 5.2
ここにコードがあります
//
//
//
//
//Purpose: program that multiplys two matrices
#include <iomanip>
#include <iostream>
using namespace std;
const int N = 3;
void multiplyMatrix(const double a[][N], const double b[][N], double c[][N]);
int main()
{
const double matrix1[][N] = {{1, 2, 3},{4, 5, 6},{7, 8, 9}}; //matrix 1
const double matrix2[][N] = {{0, 2, 4},{1, 4.5, 2.2},{1.1, 4.3, 5.2}}; //matrix 2
double matrix[][N]= {0};
multiplyMatrix(matrix1, matrix2, matrix);
return 0;
}
void multiplyMatrix(const double a[][N], const double b[][N], double c[][N])
{
for ( int i = 0; i < 3 ; i++)
{
for ( int j = 0; j < 3; j++)
{
for ( int r = 0; r < 3; r++)
{
c[i][j] += (a[i][r] * b[r][j]);
}
cout << c[i][j] << setw(7);
}
cout << endl;
}
}
助けてください