Версия для копирования в MS Word
PDF-версии: горизонтальная · вертикальная · крупный шрифт · с большим полем
РЕШУ ВПР — информатика–8
Задания
i

Вам пред­ла­га­ет­ся два за­да­ния: за­да­ние 12.1 и за­да­ние 12.2. Вы мо­же­те ре­шать оба за­да­ния или одно из них по сво­е­му вы­бо­ру. За­да­ние 12.2 яв­ля­ет­ся усложнённым ва­ри­ан­том за­да­ния 12.1, оно со­дер­жит до­пол­ни­тель­ные тре­бо­ва­ния к про­грам­ме.

 

12.1.  На бес­ко­неч­ном поле име­ют­ся две оди­на­ко­вые вер­ти­каль­ные стены и одна го­ри­зон­таль­ная стена, со­еди­ня­ю­щая ниж­ние концы вер­ти­каль­ных стен. Длины вер­ти­каль­ных стен  — 5 кле­ток, длина го­ри­зон­таль­ной стены  — 4 клет­ки. Робот на­хо­дит­ся в клет­ке, рас­по­ло­жен­ной не­по­сред­ствен­но над го­ри­зон­таль­ной сте­ной во вто­рой клет­ке слева от пра­вой вер­ти­каль­ной стены. На ри­сун­ке ука­за­но рас­по­ло­же­ние стен и Ро­бо­та. Робот обо­зна­чен бук­вой «Р».

На­пи­ши­те для Ро­бо­та про­грам­му, ис­поль­зу­ю­щую не менее 3 цик­ли­че­ских ал­го­рит­мов, за­кра­ши­ва­ю­щую все клет­ки, рас­по­ло­жен­ные не­по­сред­ствен­но над го­ри­зон­таль­ной сте­ной и под го­ри­зон­таль­ной сте­ной. Вы мо­же­те ис­поль­зо­вать цикл нц-раз-кц или нц-пока-кц. Робот дол­жен за­кра­сить толь­ко клет­ки, удо­вле­тво­ря­ю­щие дан­но­му усло­вию. На ри­сун­ке по­ка­за­ны клет­ки, ко­то­рые Робот дол­жен за­кра­сить (см. рис.).

Ко­неч­ное рас­по­ло­же­ние Ро­бо­та может быть про­из­воль­ным. При ис­пол­не­нии ал­го­рит­ма Робот не дол­жен раз­ру­шить­ся. Вы­пол­не­ние ал­го­рит­ма долж­но за­вер­шить­ся. Ал­го­ритм может быть вы­пол­нен в среде фор­маль­но­го ис­пол­ни­те­ля или за­пи­сан в тек­сто­вом ре­дак­то­ре. Со­хра­ни­те ал­го­ритм в фор­ма­те про­грам­мы Кумир или в тек­сто­вом файле. На­зва­ние файла и ка­та­лог для со­хра­не­ния Вам со­об­щат ор­га­ни­за­то­ры.

 

12.2.  На бес­ко­неч­ном поле име­ют­ся две оди­на­ко­вые вер­ти­каль­ные стены и одна го­ри­зон­таль­ная стена, со­еди­ня­ю­щая ниж­ние концы вер­ти­каль­ных стен. Длины стен не­из­вест­ны. Робот на­хо­дит­ся в одной из кле­ток, рас­по­ло­жен­ных не­по­сред­ствен­но над го­ри­зон­таль­ной сте­ной. На ри­сун­ке ука­зан один из воз­мож­ных спо­со­бов рас­по­ло­же­ния стен и Ро­бо­та. Робот обо­зна­чен бук­вой «Р».

На­пи­ши­те для Ро­бо­та про­грам­му, за­кра­ши­ва­ю­щую все клет­ки, рас­по­ло­жен­ные не­по­сред­ствен­но над го­ри­зон­таль­ной сте­ной и под го­ри­зон­таль­ной сте­ной. Робот дол­жен за­кра­сить толь­ко клет­ки, удо­вле­тво­ря­ю­щие дан­но­му усло­вию. На­при­мер, для при­ведённого выше ри­сун­ка Робот дол­жен за­кра­сить сле­ду­ю­щие клет­ки (см. рис.).

Ко­неч­ное рас­по­ло­же­ние Ро­бо­та может быть про­из­воль­ным. Ал­го­ритм дол­жен ре­шать за­да­чу для про­из­воль­но­го раз­ме­ра поля и лю­бо­го до­пу­сти­мо­го рас­по­ло­же­ния стен внут­ри пря­мо­уголь­но­го поля. При ис­пол­не­нии ал­го­рит­ма Робот не дол­жен раз­ру­шить­ся. Вы­пол­не­ние ал­го­рит­ма долж­но за­вер­шить­ся. Ал­го­ритм может быть вы­пол­нен в среде фор­маль­но­го ис­пол­ни­те­ля или за­пи­сан в тек­сто­вом ре­дак­то­ре. Со­хра­ни­те ал­го­ритм в фор­ма­те про­грам­мы Кумир или в тек­сто­вом файле. На­зва­ние файла и ка­та­лог для со­хра­не­ния Вам со­об­щат ор­га­ни­за­то­ры.