У исполнителя Делитель две команды, которым присвоены номера:
1. раздели на 2
2. вычти 1
Первая из них уменьшает число на экране в 2 раза, вторая уменьшает его на 1.
Исполнитель работает только с натуральными числами.
Составьте алгоритм получения из числа 27 числа 3, содержащий не более
5 команд. В ответе запишите только номера команд.
(Например, 12121 –– это алгоритм:
раздели на 2
вычти 1
раздели на 2
вычти 1
раздели на 2,
который преобразует число 30 в 3.)
Если таких алгоритмов более одного, то запишите любой из них.
ЧТО НЕОБХОДИМО СДЕЛАТЬ В ЗАДАНИИ?
Преобразовать число 27 в число 3 с помощью исполнителя Делитель , использовать при этом не более 5 команд
ЧТО МЫ ЗНАЕМ ОБ ИСПОЛНИТЕЛЕ ДЕЛИТЕЛЬ?
Имеет две команды
1. Раздели на 2
2. Вычти 1
Работает с натуральными числами
КАК МЫ РАССУЖДАЕМ?
У нас ограниченное число действий для преобразования (не больше 5), значит мы должны использовать ту команду, которая максимально приближает исходное число (27) к желаемому результату (3). При этом все промежуточные результаты должны быть натуральными числами (целые, положительные).
Исходное число должно уменьшаться, соответственно приоритетная команда - деление на 2, НО мы не можем делить нечетное число (результатом будет число не натуральное), значит действуем так : если число нечетное и оно больше 3 , вычитаем один , если четное делим на 2.
Действуем согласно тому алгоритму, который описали выше:
1) 27 число нечетное , значит вычитаем 1.
27-1=26
Команда 2
2) 26 число четное, делим на 2.
26/2=13
Команда 1
3) 13 число нечетное, вычитаем 1.
13-1=12
Команда 2
4) 12 число четное, делим на 2.
12/2=6
Команда 1
5. 6 число четное, делим на 2.
6/2=3 (НЕОБХОДИМЫЙ РЕЗУЛЬТАТ)
Команда 1
Получили не больше 5 команд, как и требовалось в задании.
Переписываем только номера используемых команд по порядку: 21211
ОТВЕТ 21211