"У Удвоителя две команды, которым присвоены номера:1. Прибавь 12. умножь **...

0 голосов
42 просмотров

"У Удвоителя две команды, которым присвоены номера:
1. Прибавь 1
2. умножь на 2
Первая-увеличивает число на экране на 1, вторая удваивает его.
Программа для удвоителя-это последовательность команд.
Сколько программ, которые число 2 преобразуют в число 22."
Так вот, в чем суть. Нужно написать программку для решения этой задачи. Я даже не знаю, с чего начать можно. Может вы сможете чем-то помочь?


Информатика (41 баллов) | 42 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

2---->22    
1)   2*2=4
2)   4+1=5
3)   5*2=10
4)   10+1=11
5)   11*2=22
program chik;
var a,b,k:integer;
begin
a:=2;   b:=22;
k:=0;
while b>a do
begin
k:=k+1;
if(b mod a=0)then b:=b div a else b:=b-1;
if(b=2)then break;
end;
writeln(k);
end. 

(6.6k баллов)