РУҚА
24

Жауабы: Исправление программы обработки чисел

ЕГЭ · Информатика · Тапсырма 24 · Бағдарламалау негіздері
КүрделіФИПИ8FCDC3Толық шешім≈ 10 минут
Ненің шығуы керек

1) Программа выведет 2 и 4. 2) Например, последовательность 1 1 1 4: правильный ответ — 1 и 4, и программа выведет то же самое. 3) Исправления: sum = sum + i заменить на sum = sum + x; if n > 0: заменить на if count > 0:.

У этого задания официального ключа нет, поэтому ответ получен в разборе және кілтпен салыстырылмаған. Нәтижені жаттамас бұрын, өтіңіз выкладки — там видно, откуда взялось каждое число.

Условие

На обработку поступает последовательность из четырёх неотрицательных целых чисел (некоторые числа могут быть одинаковыми). Нужно написать программу, которая выводит на экран количество делящихся нацело на 4 чисел в исходной последовательности и сумму таких чисел. Если делящихся нацело на 4 чисел нет, требуется на экран вывести «NO». Известно, что вводимые числа не превышают 1000. Программист написал программу неправильно. Ниже приведена написанная им программа на языке Python.

Последовательно выполните следующие действия:
1. Напишите, что выведет эта программа при вводе последовательности: 20 93 40 39.
2. Приведите пример такой последовательности, содержащей хотя бы одно делящееся нацело на 4 число, что при её вводе приведённая программа, несмотря на ошибки, выведет правильный ответ.
3. Найдите допущенные программистом ошибки и исправьте их. Исправление ошибки должно затрагивать только строку, в которой находится ошибка. Для каждой ошибки выпишите строку, в которой сделана ошибка, и приведите правильный вариант этой строки. Известно, что в тексте программы нужно исправить не более двух строк так, чтобы она стала работать правильно. Достаточно указать ошибки и способ их исправления для языка Python. 0 делится на любое натуральное число.

Python
1n = 4
2count = 0
3sum = 0
4for i in range(1, n+1):
5    x = int(input())
6    if x % 4 == 0:
7        count += 1
8        sum = sum + i
9if n > 0:
10    print(count)
11    print(sum)
12else:
13    print("NO")
Тапсырманы ашып, өзіңіз шешіңіз

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

Считать, что программа складывает значения чисел, хотя она складывает их индексы.

Исправлять условие на if n == 0:, не учитывая структуру ветвления.

Приводить пример последовательности без чисел, делящихся на 4.

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

Откуда взялся этот ответТалдау бөлінген 5 қадам: видно каждое преобразование и где теряется балл.
Шешімді ашу

Тапсырмаға жауап 24 ЕГЭ, информатика

Официального ключа у этого задания нет, и ответ здесь получен в разборе. Сондықтан жанында есептеулер бар: олардан жауаптың неге негізделгені көрінеді, және тек қана нәтижемен емес, шешім барысын да салыстыруға болады.

Задача из темы «Бағдарламалау негіздері»: в ней 160 задач — әрқайсысының жауабы мен қадамдық талдауы бар. Тіркелу қажет емес.