Создать программу для вычисленич матриц 4го порядка - VB
Формулировка задачи:
Создать программу для вычисления матриц 4го порядка
Решение задачи: «Создать программу для вычисленич матриц 4го порядка»
textual
Листинг программы
Private Sub Command1_Click()
Dim a&(), o&, n&
n = InputBox("n")
Form1.Cls
ReDim a(1 To n, 1 To n)
Randomize
For i = 1 To n
For j = 1 To n
a(i, j) = Int(Rnd(1) * 9 + 1)
Print a(i, j);
Next j
Print
Next i
Select Case n
Case 1
o = a(1, 1)
Case 2
o = a(1, 1) * a(2, 2) - a(1, 2) * a(2, 1)
Case 3
o = op(a(1, 1), a(1, 2), a(1, 3), a(2, 1), a(2, 2), a(2, 3), a(3, 1), a(3, 2), a(3, 3))
Case 4
o = a(1, 1) * op(a(2, 2), a(2, 3), a(2, 4), a(3, 2), a(3, 3), a(3, 4), a(4, 2), a(4, 3), a(4, 4))
o = o - a(1, 2) * op(a(2, 1), a(2, 3), a(2, 4), a(3, 1), a(3, 3), a(3, 4), a(4, 1), a(4, 3), a(4, 4))
o = o + a(1, 3) * op(a(2, 1), a(2, 2), a(2, 4), a(3, 1), a(3, 2), a(3, 4), a(4, 1), a(4, 2), a(4, 4))
o = o - a(1, 4) * op(a(2, 1), a(2, 2), a(2, 3), a(3, 1), a(3, 2), a(3, 3), a(4, 1), a(4, 2), a(4, 3))
End Select
Print
Print o
End Sub
Function op(ByVal a11&, a12&, a13&, a21&, a22&, a23&, a31&, a32&, a33&) As Long
op = a11 * a22 * a33 + a12 * a23 * a31 + a13 * a21 * a32 - _
a31 * a22 * a13 - a21 * a12 * a33 - a11 * a32 * a23
End Function