VBA-Матрица,диагональ(главная,побочная)
Формулировка задачи:
Дана квадратная матрица порядка N. Вывести столбец матрицы, в котором элемент, стоящий на главной (побочной) диагонали, минимален, среди элементов главной диагонали.
Решение задачи: «VBA-Матрица,диагональ(главная,побочная)»
textual
Листинг программы
Sub test() Dim matrix() As Integer Dim n As Variant Dim mColumn As Variant Dim minValue As Integer Dim maxValue As Integer Dim minElement As Integer Dim nr As Integer minValue = 0 maxValue = 20 Cells.Clear n = InputBox("n = ") ReDim matrix(1 To n, 1 To n) For i = 1 To n For j = 1 To n matrix(i, j) = Int((maxValue - minValue + 1) * Rnd + minValue) Next j Next i ReDim mColumn(1 To n) minElement = matrix(1, 1) For i = 1 To n For j = 1 To n If i = j Then If minElement > matrix(i, j) Then nr = j minElement = matrix(i, j) End If End If Next j Next i For i = 1 To n mColumn(i) = matrix(i, nr) Next i Range(Range("A1"), Range("A1").Offset(n - 1, n - 1)) = matrix Range(Range("A1").Offset(0, n + 3), Range("A1").Offset(0, n + 3).Offset(n - 1, 0)) = WorksheetFunction.Transpose(mColumn) For i = 0 To n - 1 Range("A1").Offset(i, i).Interior.Color = 14408946 Next i End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д