VBA Excel.
Определить столбец матрицы B, сумма модулей элементов которого максимальна, если B=3A^2-A-7E, где E - единичная матрица, A - матрица размерности 5x5, элементы которой определяются по формуле:
Aij = i - j, если i = j
Aij = i - 2*j, если i ≠ j
Вывести на печать указанный столбец и его номер.
Оформление на подобие этого!
Sub pr()
Dim A(1 To 5, 1 To 5) As Single
Dim B(1 To 5, 1 To 5) As Single
Dim C(1 To 5, 1 To 5) As Single
Dim d(1 To 5) As Single
Dim i As Integer, j As Integer, k As Integer
For i = 1 To 5 Step 1
For j = 1 To 5 Step 1
If i = j Then A(i, j) = 5 - i - j Else A(i, j) = i - j
Next
Ответы на вопрос
Sub MaxAbsColumnB()
Dim A(1 To 5, 1 To 5) As Double
Dim A2(1 To 5, 1 To 5) As Double
Dim B(1 To 5, 1 To 5) As Double
Dim i As Integer, j As Integer, k As Integer
Dim sumAbs As Double, maxSum As Double, colMax As Integer
' Заполнение матрицы A
For i = 1 To 5
For j = 1 To 5
If i = j Then
A(i, j) = i - j
Else
A(i, j) = i - 2 * j
End If
Next j
Next i
' Вычисление A^2 = A * A
For i = 1 To 5
For j = 1 To 5
A2(i, j) = 0
For k = 1 To 5
A2(i, j) = A2(i, j) + A(i, k) * A(k, j)
Next k
Next j
Next i
' Вычисление B = 3*A^2 - A - 7*E
For i = 1 To 5
For j = 1 To 5
B(i, j) = 3 * A2(i, j) - A(i, j)
If i = j Then
B(i, j) = B(i, j) - 7
End If
Next j
Next i
' Поиск столбца с максимальной суммой модулей
maxSum = -1
colMax = 0
For j = 1 To 5
sumAbs = 0
For i = 1 To 5
sumAbs = sumAbs + Abs(B(i, j))
Next i
If sumAbs > maxSum Then
maxSum = sumAbs
colMax = j
End If
Next j
' Вывод результатов
Debug.Print "Номер столбца с максимальной суммой модулей: " & colMax
Debug.Print "Элементы столбца:"
For i = 1 To 5
Debug.Print B(i, colMax)
Next i
End Sub
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

