就像标题中描述的那样,Microsoft 框架中是否有一些库允许将两个矩阵相乘,或者我是否必须编写自己的方法来执行此操作?//我现在已经有了答案

第二个问题:
我用 MultiplyMatrix 方法编写了这个多类,但它不像我想要的那样工作。谁能帮忙告诉我哪里出错了?

class multi
    {
        public void MultiplyMatrix(double[,] _A, double[,] _B, int _n, int _m, int _r)
        {
            int n, m, r;
            double si;
            n = _n;
            m = _m;
            r = _r;
            double[,] A = new double[n, m];
            double[,] B = new double[m, r];
            double[,] C = new double[n, r];
            A = _A;
            B = _B;
            try
            {
                for (int i = 0; i < n; i++)
                {
                    for (int j = 0; j < r; j++)
                    {
                        si = 0;
                        for (int k = 0; k < m; k++)
                        {
                            si += A[i, m + k] + B[k, r + j];
                        }
                        C[i, r + j] = si;
                    }
                }
                for (int i = 0; i < C.Length; i++)
                {
                    for (int j = 0; j < C.Length; j++)
                    {
                        Console.Write(C[i, j]+" ");
                        if (j % 3 == 0)
                            Console.WriteLine();
                    }
                }
            }
            catch (IndexOutOfRangeException) { } // I always get this exception

        }

    }

我忘了告诉:我想制作一个网络服务来乘以它。

谢谢:)

最佳答案

.NET 中没有任何内容。您必须自己编写乘法或使用某些第三方库。我有 blogged 关于比较两种不同实现的一种方法:一种标准的朴素算法和一种使用不安全代码的算法。

关于c# - 如何在 C# 中将两个矩阵相乘?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6311309/

10-13 01:28