РУҚА
25

Ответ: Замена элементов массива

ЕГЭ · Информатика · Задание 25 · Алгоритмы и исполнители
ПовышеннаяФИПИD7E72AРазвёрнутое решение≈ 10 минут
Что должно получиться

k = 10001
for i in range(n):
if a[i] % 8 != 0 and a[i] < k:
k = a[i]
for i in range(n):
if a[i] % 8 != 0:
a[i] = k
for i in range(n):
print(a[i])

У этого задания официального ключа нет, поэтому ответ получен в разборе и с ключом не сверен. Перед тем как заучивать результат, пройдите выкладки — там видно, откуда взялось каждое число.

Условие

Дан целочисленный массив из 30 элементов. Элементы массива принимают натуральные значения от 1 до 10 000 включительно. Опишите на языке программирования алгоритм, который находит минимум среди элементов массива, не делящихся нацело на 8, а затем заменяет каждый элемент, не делящийся нацело на 8, на найденный минимум. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент — с новой строки.

Для решения на Python используются заранее объявленные переменные a, n, i, j, k: массив a заполнен 30 исходными элементами, n = 30. Запишите фрагмент программы на Python 3, который должен находиться на месте многоточия.

Открыть задачу и решить самому

Где здесь ошибаются

Искать минимум среди всех элементов, включая делящиеся на 8.

Заменять также элементы, которые делятся на 8.

Использовать найденный минимум до завершения первого прохода.

Выводить элементы в одну строку вместо вывода каждого элемента с новой строки.

Откуда взялся этот ответРазбор разложен на 4 шага: видно каждое преобразование и где теряется балл.
Открыть решение

Ответ к заданию 25 ЕГЭ, информатика

Официального ключа у этого задания нет, и ответ здесь получен в разборе. Поэтому рядом стоят выкладки: по ним видно, на чём ответ держится, и можно сверить свой ход решения, а не только результат.

Задача из темы «Алгоритмы и исполнители»: в ней 432 задачи — у каждой есть ответ и разбор по шагам. Регистрация не нужна.