Увеличь две младшие цифры на 1

Первая из них увеличивает число на экране на 1, вторая – увеличивает на 1 число десятков и число единиц. Если перед выполнением команды 2 какая-либо из двух младших цифр равна 9, она не изменяется. Программа для Калькулятора – это последовательность команд.

Сколько есть программ, которые число 23 преобразуют в число 48?

Решение (1 способ, составление таблицы):

1) заметим, что при выполнении любой из команд число увеличивается (не может уменьшаться)

2) при заданных командах очередное число N может быть получено двумя способами:

3) увеличением на 1 (для всех чисел, больших начального числа)

4) увеличением обеих цифр на 1 в результате выполнения команды 2 (то есть, фактически командой «+11») – для всех чисел, больших или равных 23 + 11 = 34, которые НЕ оканчиваются на 0;

5) увеличением только младшей цифры на 1 в результате выполнения команды 2 (то есть, фактически командой «+1») – для всех чисел от 91 до 99, но в нашем диапазоне (23..48) таких нет

6) увеличением только старшей цифры на 1 в результате выполнения команды 2 (то есть, фактически командой «+10») – для всех чисел, больших 34 и имеющих 9 на конце; в нашем случае под этот вариант подходит только число 39

7) таким образом, рекуррентные формулы принимают вид

 для всех чисел, меньших, чем 34, а также для всех чисел, оканчивающихся на 0

для чисел, больших или равных 34, кроме 39

для числа 39

8) других способов получения числа с помощью исполнителя с заданными командами нет, то есть мы таким образом рассматриваем все возможные программы

9) начальное значение:  (число 23 можно получить единственной пустой программой)

10) далее заполняем таблицу:

23 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
1 1 2 3 4 5 6 8 8 9 10 11 12 14 17 21 26

здесь многоточия означают, что для всех чисел от 23 до 33 включительно количество программ равно 1;

11) например, для числа 47 количество программ вычисляется как

 = 17 + 4 = 21

а для числа 39 –как

 = 6 + 1 + 1 = 8

12) Ответ: 26


Задачи для тренировки [1]:

1) У исполнителя Калькулятор две команды, которым присвоены номера:


Прибавь 1

Умножь на 2

Сколько есть программ, которые число 1 преобразуют в число 16?  

2) У исполнителя Калькулятор две команды, которым присвоены номера:

Прибавь 1

Умножь на 4

Сколько есть программ, которые число 1 преобразуют в число 55?  

3) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Умножь на 2

Умножь на 3

Сколько есть программ, которые число 1 преобразуют в число 18?  

4) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Умножь на 2

Умножь на 4

Сколько есть программ, которые число 1 преобразуют в число 17?  

5) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Умножь на 3

Умножь на 4

Сколько есть программ, которые число 1 преобразуют в число 25?  

6) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Прибавь 2

Умножь на 3

Сколько есть программ, которые число 1 преобразуют в число 12?  

7) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Прибавь 3

Умножь на 2

Сколько есть программ, которые число 1 преобразуют в число 15?  

8) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Прибавь 3

Умножь на 3

Сколько есть программ, которые число 1 преобразуют в число 15?  

9) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Прибавь 3

Умножь на 4

Сколько есть программ, которые число 1 преобразуют в число 18?  

10) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Прибавь 2

Умножь на 4

Сколько есть программ, которые число 1 преобразуют в число 13?  

11) У исполнителя Калькулятор две команды, которым присвоены номера:

Прибавь 1

Умножь на 4

Сколько есть программ, которые число 1 преобразуют в число 32?  

12) (С.Э. Назаренко)  У исполнителя Калькулятор две команды, которым присвоены номера:

Прибавь 2

Умножь на 2

Сколько есть программ, которые число 1 преобразуют в число 24?

13)  (С.Э. Назаренко) У исполнителя Калькулятор две команды, которым присвоены номера:

Прибавь 1

Умножь на 3

Сколько есть программ, которые число 5 преобразуют в число 49? 

14) (С.Э. Назаренко) У исполнителя Калькулятор две команды, которым присвоены номера:

Прибавь 3

Умножь на 3

Сколько есть программ, которые число 5 преобразуют в число 27?  

15) (С.Э. Назаренко) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Прибавь 3

Умножь на 2

Сколько есть программ, которые число 3 преобразуют в число 15? 

16) (Т.В. Белова) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Умножь на 2

Возведи в квадрат

Сколько есть программ, которые число 2 преобразуют в число 38? 

17) (Т.В. Белова) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Прибавь 3

Возведи в квадрат

Сколько есть программ, которые число 2 преобразуют в число 19? 

18) (Т.В. Белова) У исполнителя Калькулятор три команды, которым присвоены номера:

Прибавь 1

Умножь на 2

Возведи в квадрат

Сколько есть программ, которые число 2 преобразуют в число 27? 

19) У исполнителя Калькулятор две команды, которым присвоены номера:

Прибавь 1


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: