Работа с матрицами А(N,N) - VB

Узнай цену своей работы

Формулировка задачи:

В матрице А(N,N) уплотнить все элементы значения которых больше нуля в направлении указанном на рисунке. Остальные элементы сделать равными нулю. Дайте какую нибудь наводку или покажите решение. Никак не могу разобраться в этом бейсике. И ещё посоветуйте какие нибудь книги по визуал бейсику

Решение задачи: «Работа с матрицами А(N,N)»

textual
Листинг программы
14.  В матрице А(N,N) уплотнить все элементы значения которых больше нуля в направлении указанном на рисунке.
Остальные элементы сделать равными нулю.
 
 
 
Private Sub Command1_Click()
Dim a() As Single, b() As Single
Dim N As Integer
Dim napr As Integer
N = Val(InputBox("вводим размерность матрицы N-?", , 5))
If N > 2 Then
Me.Cls
Me.CurrentY = 2000
ReDim a(N, N), b(N, N)
For i = 1 To N
  For j = 1 To N
     a(i, j) = Int(Rnd * 21) - 10
     'a(i, j) = Val(InputBox("a(" & i & " ; " & j & ")"))
    Print a(i, j); Tab;
  Next j
  Print
Next i
 
 Print: Print
 
i1 = 1: j1 = N + 1: napr = -1
For i = 1 To N
   For j = 1 To N
     If a(i, j) > 0 Then
        If (j1 = 1 And napr = -1) Or (j1 = N And napr = 1) Then
           i1 = i1 + 1
           j1 = j1 + napr
           napr = napr * (-1)
        End If
          j1 = j1 + napr
        b(i1, j1) = a(i, j)
     End If
  Next j
Next i
 
ReDim a(N, N)
 
a = b
 
For i = 1 To N
  For j = 1 To N
     Print a(i, j); Tab;
  Next j
   Print
Next i
 
Else
MsgBox "введите N>2", vbExclamation
End If
End Sub
 
Private Sub Form_Load()
Me.AutoRedraw = True 'можна в свойствах
'Command1.Style = 1 объязательно в свойствах (что б рисунок был на кнопке
Command1.Picture = Image1.Picture
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5
Похожие ответы