Записать матрицу в виде массивов - VB
Формулировка задачи:
Записать матрицу А в компактном виде, т. е. в виде трех массивов: в
первый записать по порядку все ненулевые элементы матрицы А; во второй –
номера строк соответствующих ненулевых элементов; в третий – номера столб-
цов соответствующих ненулевых элементов:
1 -1 0 4 10
А= 2 0,5 3 7 0
0 41 -9 0 0
13 2,7 0 5 8
Вот начало:
а как дальше? помогите, пожалуйста
Листинг программы
- Dim A(4, 5) As Integer
- Dim S As String
- Dim i, j
- Dim B(13)
- A(1, 1) = 1: A(1, 2) = -1: A(1, 3) = 0: A(1, 4) = 4: A(1, 5) = 10
- A(2, 1) = 2: A(2, 2) = 0.5: A(2, 3) = 3: A(2, 4) = 7: A(2, 5) = 0
- A(3, 1) = 0: A(3, 2) = 41: A(3, 3) = -9: A(3, 4) = 0: A(3, 5) = 0
- A(4, 1) = 13: A(4, 2) = 2.7: A(4, 3) = 0: A(4, 4) = 5: A(4, 5) = 8
- List4.AddItem ("A")
- S = ""
- For i = 1 To 4
- For j = 1 To 5
- S = S + " " + Str(A(i, j))
- Next j
- List4.AddItem (S)
- S = ""
- Next i
- For i = 1 To 4
- For j = 1 To 5
- If A(i, j) = 0 Then A(i, j) = ?
- If A(i, j) <> 0 Then B(13) = A(i, j)
- Next j
- Next i
Решение задачи: «Записать матрицу в виде массивов»
textual
Листинг программы
- Private Sub form_load()
- Dim A(1 To 4, 1 To 5) As Double 'Integer
- Dim S As String
- Dim i As Long, j As Long, k As Long
- ReDim B(1 To 20) As Double, C(1 To 20) As Long, D(1 To 20) As Long
- A(1, 1) = 1: A(1, 2) = -1: A(1, 3) = 0: A(1, 4) = 4: A(1, 5) = 10
- A(2, 1) = 2: A(2, 2) = 0.5: A(2, 3) = 3: A(2, 4) = 7: A(2, 5) = 0
- A(3, 1) = 0: A(3, 2) = 41: A(3, 3) = -9: A(3, 4) = 0: A(3, 5) = 0
- A(4, 1) = 13: A(4, 2) = 2.7: A(4, 3) = 0: A(4, 4) = 5: A(4, 5) = 8
- List4.AddItem ("A")
- For i = 1 To 4
- S = ""
- For j = 1 To 5
- S = S + " " + Str(A(i, j))
- If A(i, j) <> 0 Then
- k = k + 1
- B(k) = A(i, j): C(k) = i: D(k) = j
- End If
- Next j
- List4.AddItem (S)
- Next i
- List4.AddItem ("B - ненулевые элементы")
- S = ""
- For i = 1 To k: S = S & " " & B(i): Next
- List4.AddItem S
- List4.AddItem ("C - строки ненулевых элементов")
- S = ""
- For i = 1 To k: S = S & " " & C(i): Next
- List4.AddItem S
- List4.AddItem ("D - столбцы ненулевых элементов")
- S = ""
- For i = 1 To k: S = S & " " & D(i): Next
- List4.AddItem S
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д