Программа для обращения матриц 3-го порядка - VB
Формулировка задачи:
привет всем,ребята,выручайте,надо написать Программу для обращения матриц 3-го порядка
Решение задачи: «Программа для обращения матриц 3-го порядка»
textual
Листинг программы
Private Sub Command1_Click() Form1.Cls Dim a(1 To 3, 1 To 3) As Single, ad(1 To 6, 1 To 6) As Single Dim m(1 To 3, 1 To 3) As Single, ao(1 To 3, 1 To 3) As Single Dim d As Single, p As Integer Randomize Print "исходная матрица" For i = 1 To 3 For j = 1 To 3 a(i, j) = Int(Rnd(1) * 5) ad(i, j) = a(i, j) ad(i + 3, j) = a(i, j) ad(i, j + 3) = a(i, j) ad(i + 3, j + 3) = a(i, j) Print a(i, j); Next j Print Next i Print For i = 1 To 6 For j = 1 To 6 Print ad(i, j); Next j Print Next i Print "миноры" For i = 1 To 3 For j = 1 To 3 p = 0 If i + j = 3 Or i + j = 5 Then p = 1 m(i, j) = (-1) ^ (i + j + p) * (ad(i + 1, j + 1) * ad(i + 2, j + 2) - ad(i + 1, j + 2) * ad(i + 2, j + 1)) Print m(i, j); Next j Print Next i Print "детерминанат" d = a(1, 1) * a(2, 2) * a(3, 3) + a(1, 3) * a(2, 1) * a(3, 2) + a(3, 1) * a(1, 2) * a(2, 3) d = d - a(3, 1) * a(2, 2) * a(1, 3) - a(1, 1) * a(3, 2) * a(2, 3) - a(3, 3) * a(2, 1) * a(1, 2) Print d Print "обращенная матрица" If d = 0 Then MsgBox "ранг меньше трех": Exit Sub For i = 1 To 3 For j = 1 To 3 ao(i, j) = m(j, i) / d Print ao(i, j); Next j Print Next i End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д