![无需使用 VBA 在 Excel 中求解线性方程组](https://linux22.com/image/1342905/%E6%97%A0%E9%9C%80%E4%BD%BF%E7%94%A8%20VBA%20%E5%9C%A8%20Excel%20%E4%B8%AD%E6%B1%82%E8%A7%A3%E7%BA%BF%E6%80%A7%E6%96%B9%E7%A8%8B%E7%BB%84.png)
假设您有以下线性方程组,并想求解X,是, 和是:
- 2x + y - z = -1
- -4x + 11y = 18
- x - y + 2z = 9
有没有一种利用 Excel 工作表函数的简单方法可以做到这一点?
答案1
这可以通过使用一些线性代数和 Excel 的矩阵函数来完成。
首先,创建一个增强矩阵来表示工作表上的方程式。
由于您要求解三个变量,因此请选择要返回结果的列中的 3 个单元格。在不更改选择的情况下,键入以下公式:
=MMULT(MINVERSE(A2:C4),D2:D4)
按Ctrl++在选定的数组中输入公式。Shift这Enter将返回方程组的解。
这也适用于具有更多变量的较大方程组。该公式基于以下观察:线性方程组的左侧可以表示为n经过n矩阵,A, 和n由 1 个变量矩阵组成,X,右边可以表示为n1 个矩阵,乙。要解这个矩阵方程,两边必须乘以A。
斧头=乙
逆(A)斧头= 逆(A)乙
X= 逆(A)乙
因此,解只是方阵的逆与方程右边常数矩阵的矩阵乘积。