РУҚА
24

Ответ: Исправление программы подсчёта цифр

ЕГЭ · Информатика · Задание 24 · Основы программирования
ПовышеннаяФИПИ31077AРазвёрнутое решение≈ 10 минут
Что должно получиться

1) При вводе 324 программа выведет 3. 2) Например, N = 22. 3) В Python нужно заменить `if d != 2:` на `if d == 2:` и `print(d)` на `print(R)`.

У этого задания официального ключа нет, поэтому ответ получен в разборе и с ключом не сверен. Перед тем как заучивать результат, пройдите выкладки — там видно, откуда взялось каждое число.

Условие

Требовалось написать программу, которая получает на вход натуральное число $N$, не превосходящее $10^9$, и выводит число, равное количеству цифр 2 в десятичной записи числа $N$. Программист написал программу неправильно. Ниже приведена программа на нескольких языках программирования.

Последовательно выполните следующие действия:
1. Определите, что выведет программа при вводе числа 324.
2. Приведите пример входного числа $N$, при котором программа, несмотря на ошибки, выдаёт верный ответ.
3. Найдите допущенные программистом ошибки и исправьте их. Исправление каждой ошибки должно затрагивать только строку, в которой находится ошибка. Для каждой ошибки выпишите строку, в которой она сделана, и приведите правильный вариант строки. Известно, что в тексте программы нужно исправить не более двух строк, чтобы она стала работать правильно. Достаточно указать ошибки и способ их исправления для одного языка программирования. Требуется найти ошибки в имеющейся программе, а не написать другую программу, использующую иной алгоритм решения.

Программа на языке Python:

N = int(input())
R = 0
while N > 0:
d = N % 10
if d != 2:
R = R + 1
N = N // 10
print(d)

Открыть задачу и решить самому

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

Указать ответ 2 для числа 324, посчитав цифры 2 вместо фактического вывода ошибочной программы.

Исправить условие на d != 2, хотя оно считает цифры, отличные от 2.

Заменить print(d) на print(R), но не исправить условие.

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

Откуда взялся этот ответРазбор разложен на 5 шагов: видно каждое преобразование и где теряется балл.
Открыть решение

Ответ к заданию 24 ЕГЭ, информатика

Официального ключа у этого задания нет, и ответ здесь получен в разборе. Поэтому рядом стоят выкладки: по ним видно, на чём ответ держится, и можно сверить свой ход решения, а не только результат.

Задача из темы «Основы программирования»: в ней 160 задач — у каждой есть ответ и разбор по шагам. Регистрация не нужна.