РУҚА
25

Шешімі: Замена элементов массива

ЕГЭ · Информатика · Тапсырма 25 · Алгоритмдер және орындаушылар
КүрделіФИПИD26644Толық шешім≈ 5 минутТалдау 3 қадам
Условие

Дан целочисленный массив из 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.

Тапсырманы ашып, өзіңіз шешіңіз
Дальше ответЕгер әлі шешіп жатсаңыз – кеңестерден бастаңыз: олар жауапқа жетелейді, бірақ оны ашпайды.
К подсказкам

Шешімін қадамдап көрсету

3 қадам
1

Сначала выбираем любой элемент, не делящийся на 6, в качестве начального минимума. Затем просматриваем массив и обновляем минимум при нахождении меньшего подходящего элемента.

$$a[i] \bmod 6 \ne 0$$
2

После нахождения минимума ещё раз просматриваем массив. Каждый элемент, не делящийся на 6, заменяем найденным минимумом и выводим.

$$a[i] := j \text{ при } a[i] \bmod 6 \ne 0$$

Один из возможных фрагментов программы на Python:

$$j = min(x \mid x \in a,\ x \bmod 6 \ne 0)$$
Жауап

Python 3:

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

Бұл жауап талдау нәтижесінде алынды, бірақ банктің ресми кілтімен тексерілген жоқ — проверьте выкладки, прежде чем заучивать результат.

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

Іздеу минимума среди всех элементов массива, включая элементы, делящиеся на 6.

Замена только первого найденного элемента вместо всех подходящих элементов.

Использование условия a[i] % 6 == 0 вместо a[i] % 6 != 0.

Вывод исходных значений до выполнения замены.

Инициализация минимума нулём, хотя все элементы массива натуральные.

Закрепить приёмВ теме «Алгоритмдер және орындаушылар» ещё 431 тапсырма — жауабымен және дәл осындай талдауымен.
Жаттығу

Тапсырманы қалай шешу керек 25 ЕГЭ, информатика

Бұл есептің талдауы келесіге бөлінген: 3 шага: видно, откуда берётся каждое число и где теряется балл. Жауап есептеулердің жанында келтірілген, олардың орнына емес.

Задача из темы «Алгоритмдер және орындаушылар»: в ней 432 задачи, и у каждой есть такой же разбор. Тіркеу қажет емес.