私は2x2と2x1の行列を持ち、それらに乗算したい。これはコードです。行列乗算2x2 2x1 C#
for (i = 0; i < row; i++)
{
for (j = 0; j < col; j++)
{
for (k = 0; k < 2; k++)
{
mulMatrix[k] = Mat1[i, j] * Mat2[j];
}
}
}
私は2x2と2x1の行列を持ち、それらに乗算したい。これはコードです。行列乗算2x2 2x1 C#
for (i = 0; i < row; i++)
{
for (j = 0; j < col; j++)
{
for (k = 0; k < 2; k++)
{
mulMatrix[k] = Mat1[i, j] * Mat2[j];
}
}
}
.NETは既にこのためのライブラリを持っていると思います。ここで読む:https://msdn.microsoft.com/en-us/library/system.windows.media.matrix.multiply(v=vs.110).aspx
は基本的には、一例は以下のとおりです。
private void multiplicationExample()
{
Matrix matrix1 = new Matrix(5, 10, 15, 20, 25, 30);
Matrix matrix2 = new Matrix(2, 4, 6, 8, 10, 12);
// matrixResult is equal to (70,100,150,220,240,352)
Matrix matrixResult = Matrix.Multiply(matrix1, matrix2);
// matrixResult2 is also
// equal to (70,100,150,220,240,352)
Matrix matrixResult2 = matrix1 * matrix2;
}
math.netを試してみてください。
var matrixA = DenseMatrix.OfArray(new[,] { { 1.0, 2.0 }, { 4.0, 5.0 } });
var matrixB = DenseMatrix.OfArray(new[,] { { 1.0 }, { 2.0 } });
var result = matrixA * matrixB;
Console.WriteLine(result);
3x3の行列乗算は、このライブラリは、VS 2012でサポート可能ではない –
を頼まれたものと同じものではありません。ここでは例です – ahsan