Замена элементов массива
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит минимум среди элементов массива, делящихся нацело на 3, а затем заменяет каждый элемент, делящийся нацело на 3, на число, равное найденному минимуму. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки.
Исходные данные объявлены заранее. В решении нельзя использовать переменные, не описанные в условии; разрешается не использовать некоторые из описанных переменных. Для Python используются переменные `a`, `n`, `i`, `j`, `k`, причём `n = 30`, а элементы массива находятся в списке `a`.
В качестве ответа приведите фрагмент программы, который должен находиться на месте многоточия после ввода массива. Можно использовать Python или другой язык программирования, указав его название и версию. В решении необходимо использовать те же исходные данные и переменные, которые предложены в условии.
Условие как в банке ФИПИ — открыть и сверить
| Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите Например, для исходного массива из шести элементов: 9 4 6 5 6 12 программа должна вывести следующий массив: 6 4 6 5 6 6
Исходные данные объявлены так, как показано ниже на примерах для пяти языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.
В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.6). В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на Алгоритмическом языке). | ||||||||||||
| | ||||||||||||
Это задание с развёрнутым решением: ответом считается запись хода решения, а не строка. Напишите решение на бумаге и сравните с разбором — там каждый шаг с обоснованием.
Открыть разбор1Мягкая — с чего смотретьуровень 1 из 3
Как в массиве проверить, делится ли элемент на 3 без остатка?
2Наводящая — какие числа считатьуровень 2 из 3
Сначала отдельным циклом найдите минимальный элемент, для которого выполняется условие $a[i] \bmod 3 = 0$, затем вторым циклом замените такие элементы.
3Прямая — фактически решениеуровень 3 из 3
В Python можно начать поиск с `j = 10001`, сравнивать подходящие элементы с `j`, затем заменить подходящие элементы значением `j` и вывести массив.