📄
字号:
Option Base 1
Private Sub Command2_Click()
Dim A(), B()
Dim m, n, i, j, k, h
m = Val(Me.Text1.Text)
n = Val(Text1.Text) * Val(Text1.Text)
ReDim A(1 To m, 1 To m)
ReDim B(1 To m, 1 To m)
'填写矩阵的每一个系数
For k = 0 To n - 1
If Me.Text2(k).Text = "" Then
MsgBox "请输入完整的矩阵系数!", "输入系数!"
Text2(k).SetFocus
End If
Next k
'给矩阵的每一个元素赋值
For h = 0 To n - 1
i = Int(h / m) + 1
j = (h + m) Mod m + 1
A(i, j) = Val(Text2(h).Text)
Next h
A(1, 1) = 1 / A(1, 1)
'根据加边法求取逆矩阵
For k = 1 To m - 1
For j = 1 To k
B(k + 1, j) = 0
For i = 1 To k
B(k + 1, j) = B(k + 1, j) + A(k + 1, i) * A(i, j)
Next i
Next j
B(k + 1, k + 1) = A(k + 1, k + 1)
For j = 1 To k
B(k + 1, k + 1) = B(k + 1, k + 1) - B(k + 1, j) * A(j, k + 1)
Next j
A(k + 1, k + 1) = 1 / B(k + 1, k + 1)
For i = 1 To k
B(k + 1, i) = 0
B(i, k + 1) = 0
For j = 1 To k
B(k + 1, i) = B(k + 1, i) - A(k + 1, j) * A(j, i)
B(i, k + 1) = B(i, k + 1) - A(i, j) * A(j, k + 1)
Next j
B(k + 1, i) = B(k + 1, i) * A(k + 1, k + 1)
B(i, k + 1) = B(i, k + 1) * A(k + 1, k + 1)
Next i
For i = 1 To k
A(k + 1, i) = B(k + 1, i)
A(i, k + 1) = B(i, k + 1)
Next i
For i = 1 To k
For j = 1 To k
B(i, j) = A(i, j) + B(i, k + 1) * B(k + 1, j) / A(k + 1, k + 1)
A(i, j) = B(i, j)
Next j
Next i
Next k
'显示text3用来放置逆矩阵
For i = 1 To n - 1
Load Text3(i)
With Text3(i)
If i Mod j = 0 Then
.Top = Text3(i - 1).Top + .Height
.Left = Text3(i - j).Left
.Visible = True
Else
.Top = Text3(i - 1).Top
.Left = Text3(i - 1).Left + .Width
.Visible = True
End If
End With
Next i
'在text3中打印求逆结果
For h = 0 To n - 1
i = Int(h / m) + 1
j = (h + m) Mod m + 1
Me.Text3(h).Text = Str(A(i, j))
Next h
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim i, j, k, n As Integer
If KeyAscii = 13 Then
j = Val(Text1.Text)
n = Val(Text1.Text) * Val(Text1.Text)
For i = 1 To n - 1
Load Text2(i)
With Text2(i)
If i Mod j = 0 Then
.Top = Text2(i - 1).Top + .Height
.Left = Text2(i - j).Left
.Visible = True
Else
.Top = Text2(i - 1).Top
.Left = Text2(i - 1).Left + .Width
.Visible = True
End If
End With
Next i
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -