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

Си­сте­ма ко­манд ис­пол­ни­те­ля РОБОТ, «жи­ву­ще­го» в пря­мо­уголь­ном ла­би­рин­те на клет­ча­той плос­ко­сти, вклю­ча­ет в себя 4 ко­ман­ды-при­ка­за и 4 ко­ман­ды про­вер­ки усло­вия.

 

Ко­ман­ды-при­ка­зы:

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

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

 

Если РОБОТ начнёт дви­же­ние в сто­ро­ну на­хо­дя­щей­ся рядом с ним стены, то он раз­ру­шит­ся, и про­грам­ма прервётся.

 

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

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

 

Цикл

 

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

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

КОНЕЦ ПОКА

 

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

 

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

 

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

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

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

КОНЕЦ ЕСЛИ

 

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

Сколь­ко кле­ток ла­би­рин­та со­от­вет­ству­ют тре­бо­ва­нию, что, начав дви­же­ние в ней и вы­пол­нив пред­ло­жен­ную про­грам­му, РОБОТ уце­ле­ет и оста­но­вит­ся в за­кра­шен­ной клет­ке (клет­ка А1)?

 

НА­ЧА­ЛО

ПОКА слева сво­бод­но ИЛИ свер­ху сво­бод­но

ЕСЛИ слева сво­бод­но

ТО влево

ИНАЧЕ вверх

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

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

Ре­ше­ние.

При дан­ной про­грам­ме РОБОТ по­сту­па­ет сле­ду­ю­щим об­ра­зом: спер­ва РОБОТ про­ве­ря­ет, сво­бод­на ли клет­ка слева или свер­ху от него. Если это так, то РОБОТ пе­ре­хо­дит к пер­во­му дей­ствию внут­ри цикла. В этом цикле если у левой сто­ро­ны клет­ки, в ко­то­рой на­хо­дит­ся РОБОТ, нет стены, он дви­га­ет­ся влево, в про­тив­ном слу­чае он пе­ре­ме­ща­ет­ся вверх. После этого воз­вра­ща­ет­ся к на­ча­лу внеш­не­го цикла.

Про­ана­ли­зи­ро­вав эту про­грам­му, при­хо­дим к вы­во­ду, что РОБОТ не может раз­бить­ся.

Про­ве­рив все клет­ки по вы­ве­ден­но­му нами пра­ви­лу дви­же­ния РО­БО­ТА, вы­яс­ня­ем, что число кле­ток, удо­вле­тво­ря­ю­щих усло­вию за­да­чи, равно 20: A1-A6, B1, C1, B4-B6,C4-C6, D5-D6, F5-F6, E5, E6.

Источник: Де­мон­стра­ци­он­ная вер­сия ЕГЭ—2014 по ин­фор­ма­ти­ке.
Раздел кодификатора ФИПИ: 1.6.2 Вы­чис­ли­мость. Эк­ви­ва­лент­ность ал­го­рит­ми­че­ских мо­де­лей
Гость 30.03.2014 23:07

На­ча­ло ал­го­рит­ма "ПОКА слева сво­бод­но ИЛИ свер­ху сво­бод­но" клет­ка а1 не удвл этому усло­вию, и ал­го­ритм не нач­нет ра­бо­тать... по­че­му ее тогда счи­та­е­те?

Петр Мурзин

Для от­ве­та на свой во­прос вам стоит вни­ма­тель­но про­чи­тать усло­вие и осо­знать, что вас спра­ши­ва­ют. Чи­та­ем: «Сколь­ко кле­ток ла­би­рин­та со­от­вет­ству­ют тре­бо­ва­нию, что, начав дви­же­ние в ней и вы­пол­нив пред­ло­жен­ную про­грам­му, РОБОТ уце­ле­ет и оста­но­вит­ся в за­кра­шен­ной клет­ке (клет­ка А1)?».

Даже не дви­га­ясь, Робот вы­пол­ня­ет про­грам­му: про­ве­ря­ет вы­пол­не­ны ли усло­вия. Сле­до­ва­тель­но, стар­туя из любой клет­ки, он в любом слу­чае вы­пол­нит про­грам­му.

Робот оста­но­вит­ся в клет­ке А1? Да, он из неё ни­ку­да не пе­ре­ме­стит­ся.

Воз­мож­но, не­мно­го не­удач­ное сло­во­со­че­та­ние «начав дви­же­ние», его сле­ду­ет по­ни­мать как «начав вы­пол­не­ние про­грам­мы». Но об этом сле­ду­ет пи­сать со­ста­ви­те­лям ЕГЭ.