Задания
Версия для печати и копирования в MS Word
Тип Д12 № 13598
i

Ис­пол­ни­тель РОБОТ умеет пе­ре­ме­щать­ся по пря­мо­уголь­но­му ла­би­рин­ту, на­чер­чен­но­му на плос­ко­сти, раз­би­той на клет­ки. Между со­сед­ни­ми по сто­ро­нам клет­ка­ми может сто­ять стена. Си­сте­ма ко­манд ис­пол­ни­те­ля РОБОТ со­дер­жит во­семь ко­манд. Че­ты­ре ко­ман­ды – это ко­ман­ды-при­ка­зы

 

вверхвнизвлевовпра­во

 

При вы­пол­не­нии любой из этих ко­манд РОБОТ пе­ре­ме­ща­ет­ся на одну клет­ку со­от­вет­ствен­но: вверх ↑, вниз ↓, влево ←, впра­во →.

Че­ты­ре ко­ман­ды про­ве­ря­ют ис­тин­ность усло­вия от­сут­ствия стены у каж­дой сто­ро­ны той клет­ки, где на­хо­дит­ся РОБОТ:

 

свер­ху
сво­бод­но
снизу
сво­бод­но
слева
сво­бод­но
спра­ва
сво­бод­но

 

Цикл

ПОКА усло­вие

по­сле­до­ва­тель­ность ко­манд

КОНЕЦ ПОКА

вы­пол­ня­ет­ся, пока усло­вие ис­тин­но.

В кон­струк­ции

ЕСЛИ усло­вие

ТО ко­ман­да1

ИНАЧЕ ко­ман­да2

КОНЕЦ ЕСЛИ

вы­пол­ня­ет­ся ко­ман­да1 (если усло­вие ис­тин­но) или ко­ман­да2 (если усло­вие ложно).

 

В кон­струк­ци­ях ПОКА и ЕСЛИ усло­вие может со­дер­жать ко­ман­ды про­вер­ки, а также слова И, ИЛИ, НЕ, обо­зна­ча­ю­щие ло­ги­че­ские опе­ра­ции. Если РОБОТ начнёт дви­же­ние в сто­ро­ну на­хо­дя­щей­ся рядом с ним стены, то он раз­ру­шит­ся и про­грам­ма прервётся. Сколь­ко кле­ток ла­би­рин­та со­от­вет­ству­ют тре­бо­ва­нию, что, начав дви­же­ние в этой клет­ке и вы­пол­нив пред­ло­жен­ную про­грам­му, РОБОТ уце­ле­ет и оста­но­вит­ся в за­кра­шен­ной клет­ке (клет­ка F6)?

 

НА­ЧА­ЛО

    ПОКА снизу сво­бод­но ИЛИ спра­ва сво­бод­но

        ЕСЛИ спра­ва сво­бод­но

            ТО впра­во

            ИНАЧЕ вниз

        КОНЕЦ ЕСЛИ

    КОНЕЦ ПОКА

КОНЕЦ

Спрятать решение

Ре­ше­ние.

По дан­но­му ал­го­рит­му робот пока может идет впра­во, далее, если впра­во пойти нель­зя он спус­ка­ет­ся на 1 клет­ку вниз и про­дол­жа­ет по­пыт­ки пойти впра­во. На ри­сун­ке зе­ле­ным и серым цве­том по­ка­за­ны клет­ки, из ко­то­рых можно на­чи­нать путь, чтобы прий­ти в F6. Таких кле­ток 24.

 

Ответ: 24.

 

При­ме­ча­ние.

За­ме­тим, что если ис­ход­но РОБОТ рас­по­ла­га­ет­ся в клет­ке F6, то усло­вие цикла не будет вы­пол­не­но, и РОБОТ за­вер­шит вы­пол­не­ние про­грам­мы, сле­до­ва­тель­но, он оста­нет­ся в клет­ке F6, что удо­вле­тво­ря­ет усло­вию за­да­чи.

Раздел кодификатора ФИПИ: 1.6.2 Вы­чис­ли­мость. Эк­ви­ва­лент­ность ал­го­рит­ми­че­ских мо­де­лей