У ис­пол­ни­те­ля Умно­жа­тор две ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра: 1. умножь на 3 2. при­бавь 2 Пер­вая из них уве­ли­чи­ва­ет число на экра­не в 3 раза, вто­рая — при­бав­ля­ет к числу 2. Со­ставь­те ал­го­ритм по­л...

У ис­пол­ни­те­ля Умно­жа­тор две ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра: 1. умножь на 3 2. при­бавь 2 Пер­вая из них уве­ли­чи­ва­ет число на экра­не в 3 раза, вто­рая — при­бав­ля­ет к числу 2. Со­ставь­те ал­го­ритм по­лу­че­ния из числа 2 числа 66, со­дер­жа­щий не более 5 ко­манд. В от­ве­те за­пи­ши­те толь­ко но­ме­ра ко­манд. В от­ве­те за­пи­ши­те толь­ко но­ме­ра ко­манд. (На­при­мер, 12212 — это ал­го­ритм: умножь на 3, при­бавь 2, при­бавь 2, умножь на 3, при­бавь 2, ко­то­рый пре­об­ра­зу­ет число 2 в 32.) Если таких ал­го­рит­мов более од­но­го, то за­пи­ши­те любой из них.
Гость
Ответ(ы) на вопрос:
Гость
Начнем с конца. 66 (делим на 3)  [1] 22 ( на 3 не делится, значит отнимаем 2) [2] 20 ( на 3 не делится, значит отнимаем 2) [2] 18 (делим на 3) [1] 6   (делим на 3) [1] 2 Ответ : 11221
Гость
Ответ: 11221 Ход решения: Procedure Find(a : Integer; s : String); Begin   If a=66 then Writeln(s);   If Length(s)<5 then   Begin     Find(a*3,s+'1');     Find(a+2,s+'2');   end; end; Begin   Find(2,''); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы