Жауабы: Исправление программы обработки цифр
Для числа 645 программа выводит 4. Пример трёхзначного числа: 300. Ошибочные строки и исправления: `sum = N % 10` → `sum = 0`; `sum = digit` → `sum += digit`.
У этого задания официального ключа нет, поэтому ответ получен в разборе және кілтпен салыстырылмаған. Нәтижені жаттамас бұрын, өтіңіз выкладки — там видно, откуда взялось каждое число.
На обработку поступает натуральное число, не превышающее $10^9$. Нужно написать программу, которая выводит сумму цифр числа, не кратных 3. Если в числе нет цифр, не кратных 3, требуется вывести «NO». Напоминание: 0 делится на любое натуральное число.
Программист написал программу неправильно. Рассмотрите приведённую ниже программу на Python.
Последовательно выполните следующие действия: вычислите результат работы программы при вводе числа 645; приведите пример трёхзначного числа, при вводе которого программа выдаёт верный ответ; найдите все ошибки в программе. Известно, что каждая ошибка затрагивает только одну строку и может быть исправлена без изменения других строк. Для каждой ошибки выпишите ошибочную строку и приведите её правильный вариант. Требуется найти ошибки в данной программе, а не написать другую программу с иным алгоритмом.
1N = int(input()) 2sum = N % 10 3while N > 0: 4 digit = N % 10 5 if digit % 3 > 0: 6 sum = digit 7 N = N // 10 8if sum > 0: 9 print(sum) 10else: 11 print("NO")
Где здесь ошибаются
Указать правильную сумму цифр числа 645 — 9 — вместо результата работы ошибочной программы.
Исправить только строку `sum = digit`, не изменив начальное значение sum.
Считать ошибкой условие `digit % 3 > 0`: оно правильно проверяет, что цифра не кратна 3.
Привести число, для которого программа выдаёт неправильный жауап, вместо примера с верным ответом.