schoolМатематика
verifiedРешено AI
Решения задач на Python: Варианты 1, 2, 3
help_outlineУсловие задачи
Реши задачу: На примере 0 варианта сделать так же на Пейтон для след вариантов Реши задачу: Первый, второй и третий вариант

lightbulbКраткий ответ
Здесь представлены решения для вариантов 1, 2 и 3 задач по программированию на Python. Код написан в стиле школьных примеров для удобства использования.
Подробное решение
Ниже представлены решения для первого, второго и третьего вариантов из раздела «Задания для самостоятельной работы». Код написан в стиле ваших примеров, чтобы его было удобно переписать в тетрадь.
Вариант 1
Задание 1. Вычислить сумму и число положительных элементов матрицы \(A[N, N]\), находящихся над главной диагональю.
n = int(input('Введите размер матрицы N: '))
a = []
for i in range(n):
b = []
for j in range(n):
print('Введите [', i, ',', j, '] элемент')
b.append(int(input()))
a.append(b)
sum_p = 0
count_p = 0
for i in range(n):
for j in range(n):
if j > i: # условие нахождения над главной диагональю
if a[i][j] > 0:
sum_p += a[i][j]
count_p += 1
print('Сумма положительных над диагональю:', sum_p)
print('Количество положительных над диагональю:', count_p)
Задание 2. Найти в каждой строке \(B[N, M]\) макс. и мин. элементы и поменять их с первым и последним соответственно.
n = int(input('Введите N: '))
m = int(input('Введите M: '))
b = []
for i in range(n):
row = []
for j in range(m):
print('Введите [', i, ',', j, '] элемент')
row.append(int(input()))
b.append(row)
for i in range(n):
i_max = 0
i_min = 0
for j in range(m):
if b[i][j] > b[i][i_max]: i_max = j
if b[i][j] < b[i][i_min]: i_min = j
# Меняем макс с первым
b[i][0], b[i][i_max] = b[i][i_max], b[i][0]
# Если мин был на первом месте, он уехал на i_max
if i_min == 0: i_min = i_max
# Меняем мин с последним
b[i][m-1], b[i][i_min] = b[i][i_min], b[i][m-1]
print('Результат:')
for i in range(n):
for j in range(m):
print(b[i][j], end=' ')
print()
Вариант 2
Задание 1. Проверить, является ли матрица магическим квадратом (суммы в строках и столбцах равны).
n = int(input('Введите размер квадрата n: '))
a = []
for i in range(n):
row = []
for j in range(n):
row.append(int(input(f'Элемент [{i},{j}]: ')))
a.append(row)
# Считаем эталонную сумму (первая строка)
s_etalon = sum(a[0])
magic = True
for i in range(n):
s_row = 0
s_col = 0
for j in range(n):
s_row += a[i][j]
s_col += a[j][i]
if s_row != s_etalon or s_col != s_etalon:
magic = False
if magic: print('Матрица является магическим квадратом')
else: print('Матрица не является магическим квадратом')
Задание 2. Переставить первый и последний столбцы местами.
n = int(input('Введите N: '))
a = []
for i in range(n):
row = []
for j in range(n):
row.append(int(input(f'Элемент [{i},{j}]: ')))
a.append(row)
for i in range(n):
a[i][0], a[i][n-1] = a[i][n-1], a[i][0]
print('Измененная матрица:')
for row in a:
print(*row)
Вариант 3
Задание 1. Проверить матрицу на симметричность относительно главной диагонали.
n = int(input('Введите n: '))
a = []
for i in range(n):
a.append([int(input()) for j in range(n)])
sim = True
for i in range(n):
for j in range(n):
if a[i][j] != a[j][i]:
sim = False
if sim: print('Симметрична')
else: print('Не симметрична')
Задание 2. Переставляя строки и столбцы, добиться, чтобы наибольший элемент оказался в верхнем левом углу.
n = int(input('Строк n: '))
m = int(input('Столбцов m: '))
a = []
for i in range(n):
a.append([int(input()) for j in range(m)])
max_val = a[0][0]
r_max, c_max = 0, 0
for i in range(n):
for j in range(m):
if a[i][j] > max_val:
max_val = a[i][j]
r_max, c_max = i, j
# Меняем строки
a[0], a[r_max] = a[r_max], a[0]
# Меняем столбцы
for i in range(n):
a[i][0], a[i][c_max] = a[i][c_max], a[i][0]
print('Матрица после перестановки:')
for row in a:
print(*row)