Обозначим число на экране как x.
Команда 1: x → x - b
Команда 2: x → x * 5
Программа 21121 означает последовательность команд: 1, 2, 1, 2, 1.
Исходное число: 2.
Применяем команды:
2 - b(2 - b) * 5 = 10 - 5b(10 - 5b) - b = 10 - 6b(10 - 6b) * 5 = 50 - 30b(50 - 30b) - b = 50 - 31bКонечный результат равен 17. Следовательно:
50 - 31b = 17
50 - 17 = 31b
33 = 31b
b = 33 / 31
По условию, b — неизвестное натуральное число. Полученное значение 33/31 не является натуральным числом. Проверим, нет ли ошибки в интерпретации команд.
Возможно, команды применяются к результату предыдущей команды.
Перезапуск решения с учетом последовательного применения команд:
Начальное число: 2
2 - b(2 - b) * 5(2 - b) * 5 - b((2 - b) * 5 - b) * 5((2 - b) * 5 - b) * 5 - bТеперь упростим выражение:
((10 - 5b) - b) * 5 - b
(10 - 6b) * 5 - b
50 - 30b - b
50 - 31b
Это то же самое выражение. Возможно, порядок команд в программе 21121 имеет значение, и я неправильно его интерпретировал.
Рассмотрим другой вариант:
Пусть x — текущее число.
Программа 21121:
1. Команда 2: x * 5
2. Команда 1: x - b
3. Команда 1: x - b
4. Команда 2: x * 5
5. Команда 1: x - b
Применяем к 2:
2 * 5 = 1010 - b(10 - b) - b = 10 - 2b(10 - 2b) * 5 = 50 - 10b(50 - 10b) - b = 50 - 11b50 - 11b = 17
50 - 17 = 11b
33 = 11b
b = 33 / 11
b = 3
Проверим, что b=3 является натуральным числом. Да, 3 — натуральное число.
Проверим работу программы с b=3:
Начальное число: 2
2 * 5 = 1010 - 3 = 77 - 3 = 44 * 5 = 2020 - 3 = 17Результат совпадает с заданным (17).
Ответ: 3