Задание 24 ЕГЭ по информатике 2018. Вторая часть

Задание 24. Программирование: государственный выпускной экзамен 2018; тренировочные варианты ЕГЭ по информатике 2018, тематические тестовые задания и задачи из тренажера по информатике 2018


*** КАНАЛ ЮТЬЮБ ***
 
ЕГЭ по информатике -> ЕГЭ 2018 -> ЕГЭ 2018
 

Решение 24 задания ЕГЭ по информатике 2018 года ФИПИ вариант 1 (Крылов С.С., Чуркина Т.Е., «Типовые экзаменационные варианты», 10 вариантов):

Дано натуральное число N, не превосходящее 10000. Требуется найти и напечатать минимальную четную цифру в десятичной записи числа N. Гарантируется, что в десятичной записи числа N есть хотя бы одна четная цифра.
Для решения этой задачи ученик написал программу, но, к сожалению, его программа оказалоась неверной.

1
2
3
4
5
6
7
8
9
10
11
12
13
var
  n, mi, m: integer;
begin
  read(n);
  mi := n mod 10;
  while n > 0 do begin
    m := n mod 10;
    if (m < mi) and (m mod 2 = 0) 
    then mi := m;
    n = n div 10
  end;
  writeln(m)
end.

Последовательно выполните следующее:

  1. Напишите, что выведет эта программа при вводе числа 187.
  2. Приведите пример входного натурального числа, в десятичной записи которого есть хотя бы одна четная цифра, такого, что приведенная программа напечатает то, что требуется.
  3. Найдите в программе все ошибки (их может быть одна или несколько). Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.
Обратите внимание: Вам нужно исправить приведенную программу, а не написать свою. Вы можете только заменять ошибочные строки, но не можете удалять строки или добавлять новые. Заменять следует только ошибочные строки.

📹 Видеоразбор

✍ Показать решение:

  1. При вводе числа 187 программа выведет число 1.
  2. Например, число 4.
  3. Программа содержит две ошибки:
  4. 1) неверная инициализация mi;
    2) неверная печать результата.
      
    Пример исправления для языка Паскаль:
     
    Первая ошибка:

    mi:=n mod 10;

    Исправленная строка:

    mi:=8;

    Комментарий для экспертов: В качестве начального значения подходит любое число, большее 8. Инициализация правой цифрой числа является неверной, поскольку она может быть нечетной. Так, например, даже при условии исправления ошибки вывода инициализация mi правой цифрой для числа 187 даст неверный результат (7 вместо 8).
      
    Вторая ошибка:

    writeln(m)

    Исправленная строка:

    writeln (mi)

ЕГЭ по информатике -> ЕГЭ 2018 -> ЕГЭ 2018