Вариант 5 Дана целочисленная квадратная матрица. Определить: 1. Сумму элементов в тех столбцах, которые не содержа.....
Вариант 5
Дана целочисленная квадратная матрица. Определить:
1. Сумму элементов в тех столбцах, которые не содержат отрицательных
элементов.
2. Минимум среди сумм модулей элементов диагоналей, параллельных
побочной диагонали матрицы.
import numpy as np
def task(matrix):
# Часть 1
sum_columns = 0
for j in range(matrix.shape[1]):
if all(matrix[:, j] >= 0):
sum_columns += sum(matrix[:, j])
print(f"Сумма элементов в столбцах без отрицательных элементов: {sum_columns}")
# Часть 2
min_sum = float('inf')
for i in range(-matrix.shape[0]+1, matrix.shape[1]):
diagonal_sum = sum(abs(np.diag(matrix, i)))
if diagonal_sum < min_sum:
min_sum = diagonal_sum
print(f"Минимум среди сумм модулей элементов диагоналей: {min_sum}")
# Пример использования функции
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
task(matrix)
```
Этот код сначала импортирует библиотеку `numpy` для работы с матрицами. Затем определяется функция `task`, которая принимает матрицу в качестве аргумента и решает обе части задачи. В первой части кода вычисляется сумма элементов в столбцах без отрицательных элементов. Во второй части кода вычисляется минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы. В конце кода приведен пример использования функции `task` с матрицей `[[1, 2, 3], [4, 5, 6], [7, 8, 9]]`.