Найти максимальный элемент матрицы в верхнем треугольнике - VB
Формулировка задачи:
Задали такую задачу: дана матрица размерностью 9 на 9, нужно найти максимальный элемент матрицы в верхнем треугольнике (если матрицу разделить как конверт для писем) и вывести какой это элемент и его номер столбца и строки. Чем быстрее тем лучше, потому что препод задает ещё одну задачу если не усел сделать эту к следующей паре. Заранее большое спасибо.
Решение задачи: «Найти максимальный элемент матрицы в верхнем треугольнике»
textual
Листинг программы
- Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
- Me.AutoRedraw = True
- Dim m(), i As Integer, j As Integer, N As Integer
- Dim max_m, i_max, j_max
- Dim r As String
- 1 N = Val(InputBox("вводим размерность m", , 9)) 'N = 10
- If N < 3 Then
- MsgBox " N>=3"
- GoTo 1
- End If
- ReDim m(N, N)
- Me.Cls
- r = ""
- Randomize
- For i = 1 To N
- For j = 1 To N
- m(i, j) = Val(InputBox("вводим m(" & i & "," & j & ")", , Int(Rnd * 100)))
- r = r & m(i, j) & " "
- Next j
- r = r & vbCrLf
- Next i
- r = r & vbCrLf & "-----------------" & vbCrLf
- max_m = m(1, 1)
- i_max = 1: j_max = 1
- For i = 1 To Int(N / 2) + 1 ' или For i = 1 To N \ 2 + 1
- For j = 1 To 2 * i
- r = r & " "
- Next j
- For j = i To N - i + 1
- r = r & m(i, j) & " "
- If max_m < m(i, j) Then
- max_m = m(i, j)
- i_max = i: j_max = j
- End If
- Next j
- r = r & vbNewLine
- Next i
- r = r & vbCrLf & "-----------------" & vbCrLf
- r = r & "max( i , j ) = m ( " & i_max & " , " & j_max & " ) = " & max_m
- Me.Print r ' или MsgBox r
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д