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

lightbulbКраткий ответ
На странице представлены решения задач по Python для школьников, варианты 14 и 15. Код написан простым языком, чтобы его было удобно переписать в тетрадь.
Подробное решение
Ниже представлены решения для вариантов 14 и 15. Код написан в понятном школьном стиле, чтобы его было удобно переписать в тетрадь.
Вариант 14
Задание 1. Переставить строку с максимальным элементом на главной диагонали со строкой с заданным номером \(m\).
n = int(input('Введите размер матрицы n: '))
a = []
for i in range(n):
a.append([int(input(f'Элемент [{i},{j}]: ')) for j in range(n)])
m = int(input('Введите номер строки m (от 0): '))
# Поиск максимума на главной диагонали
max_diag = a[0][0]
row_idx = 0
for i in range(n):
if a[i][i] > max_diag:
max_diag = a[i][i]
row_idx = i
# Перестановка строк
a[m], a[row_idx] = a[row_idx], a[m]
print('Результат:')
for row in a:
print(*row)
Задание 2. Заполнить квадратную матрицу натуральными числами от 1 до \(n^2\) по спирали.
n = int(input('Введите n: '))
res = [[0] * n for i in range(n)]
x, y = 0, 0
dx, dy = 0, 1 # начальное направление — вправо
for i in range(1, n*n + 1):
res[x][y] = i
# Проверка следующего шага
nx, ny = x + dx, y + dy
if 0 <= nx < n and 0 <= ny < n and res[nx][ny] == 0:
x, y = nx, ny
else:
# Поворот направо: (0,1)->(1,0), (1,0)->(0,-1), (0,-1)->(-1,0), (-1,0)->(0,1)
dx, dy = dy, -dx
x, y = x + dx, y + dy
print('Матрица по спирали:')
for row in res:
print(*row)
Вариант 15
Задание 1. Определить номера строк, где есть хотя бы один элемент равный \(c\), и умножить эти строки на \(d\).
m = int(input('Введите количество строк M: '))
n = int(input('Введите количество столбцов N: '))
a = []
for i in range(m):
a.append([int(input()) for j in range(n)])
c = int(input('Введите число c: '))
d = int(input('Введите множитель d: '))
for i in range(m):
found = False
for j in range(n):
if a[i][j] == c:
found = True
break
if found:
print(f'Строка {i} содержит {c}')
for j in range(n):
a[i][j] *= d
print('Измененная матрица:')
for row in a:
print(*row)
Задание 2. Среди строк, содержащих только нечетные элементы, найти строку с максимальной суммой модулей.
m = int(input('Введите M: '))
n = int(input('Введите N: '))
a = []
for i in range(m):
a.append([int(input()) for j in range(n)])
max_sum = -1
target_row = -1
for i in range(m):
only_odd = True
current_sum = 0
for j in range(n):
if a[i][j] % 2 == 0:
only_odd = False
break
current_sum += abs(a[i][j])
if only_odd:
if current_sum > max_sum:
max_sum = current_sum
target_row = i
if target_row != -1:
print(f'Строка с макс. суммой модулей ({max_sum}):', a[target_row])
else:
print('Строк только с нечетными элементами не найдено')