如何在c#中创建和乘法矩阵

时间:2014-10-10 12:04:08

标签: c# matrix

好的,所以昨天在学校我被提出了一个c#任务,它创建了一个程序来构建一个矩阵并将该矩阵乘以另一个矩阵。到目前为止,我已经这样做了:

 List<List<double>> translacao = new List<List<double>>();

            translacao[0][0] = 0;
            translacao[0][1] = 0;
            translacao[0][2] = 4;
            translacao[1][0] = 0;
            translacao[1][1] = 1;
            translacao[1][2] = 6;
            translacao[2][0] = 0;
            translacao[2][1] = 0;
            translacao[2][2] = 8;

我试过像double [,]这样的普通数组,但我的问题总是一样的。从这里开始,我如何将这个矩阵乘以另一个? (我知道如何将矩阵相乘(在纸上),但c#中是否有任何方法可以为我做这些?)我发现的唯一矩阵类只能乘以3x3矩阵。

1 个答案:

答案 0 :(得分:0)

我会说你必须编写自己的功能,甚至根据你的功能是多么狡猾来为不同大小的一些重载。

我不太擅长矩阵数学,但这里有一个过程

这也不是c#:

matrix Multiply[][] (matrix a[][], matrix b[][])
{
    //check the sizes, i remeber its something that must be done but dont remember the specifics
    if (a.width != b.height)
        throw WrongSizeException;

    matrix result[][];
    //do the math:
    result[0][0] = a[0][0] * b[0][0]; //again, I don't remeber this stuff
    ...
    ...
    return result;

}

我希望这能使得正确的齿轮转动