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