Виконавець Робот СКІ, обстановка. Обстановка Робота Виконавець Робот існує в деякій обстановці прямокутному полі, розбитому на клітини, між

Управління виконавцем Робот в системі КУМІР

Робот існує в певній обстановці (прямокутному картатому поле). Між деякими клітинами поля можуть бути розташовані стіни. Деякі клітини можуть бути зафарбовані (рис. 3.11).

Робот займає рівно одну клітку поля.

За командам вгору, вниз, вліво і вправо Робот переміщається в сусідню клітку в зазначеному напрямку. Якщо на шляху виявляється стіна, то відбувається відмова - видається повідомлення про неможливість виконати чергову команду.

За командою зафарбувати Робот зафарбовує клітку, в якій стоїть. Якщо клітина вже була зафарбована, то вона закраситься повторно, хоча ніяких видимих ​​змін не відбудеться.

Робот може виконувати тільки правильно записані команди. Якщо замість команди вниз написати ВНІС, то Робот цей запис не зрозуміє і відразу ж повідомить про помилку.

Про

шибки: 1 синтаксичні; 2. логічні

Описи ситуацій зберігаються в текстових файлах спеціального формату (формат.fil).

Поточна   - обстановка, в якій знаходиться Робот в даний момент (включаючи інформацію про становище Робота).

Стартова- обстановка, в яку примусово поміщається Робот на початку виконання програми, що використовує Робот.

Порядок роботи:


  1. задати стартову обстановку   за умовою завдання:
Меню Інструменти → Змінити стартову обстановку Робота (намалювати обстаковку за умовою задачі, дати ім'я, зберегти в Особистою папці)

2. Вказати Виконавця:

Меню Вставка → Використовувати Робот

3. Написати алгоритм вирішення задачі.

4. Виконати алгоритм (Меню Виконання → Виконати безперервно / F9)

Система команд виконавця Робот в системі КУМІР


команда

Дія

вгору

Робот переміщається на 1 клітку вгору

вниз

Робот переміщається на 1 клітку вниз

вліво

Робот переміщається на 1 клітку вліво

вправо

Робот переміщається на 1 клітку вправо

зафарбувати

Робот зафарбовує клітку, в якій знаходиться

праворуч вільно

Робот перевіряє виконання відповідного простого   умови

зліва вільно



зверху вільно



знизу вільно



клітина зафарбована



клітина чиста



циклічні алгоритми

цикл- організація повторення дій, поки вірно деякий умова .

Тіло циклу -набір повторюваних дій.

Умова -логічний вираз (просте або складне (складене))
Типи циклів:

1.Цикл «Повторювати n раз» 2. Цикл «Поки»
нц n раз нц поки
. . Тіло циклу. . тіло циклу
кЦ кЦ

приклад: нц поки   праворуч вільно


Загальний вигляд циклу «Повторювати n раз:

ПОВТОРИТИ n РАЗ

КІНЕЦЬ
кЦ

Загальний вигляд циклу «поки»:

ПОКИ ЩО РОБИТИ

КІНЕЦЬ
складові умови   утворюються з одного або декількох простих умов і службових слів   І, АБО, НЕ.


складений умова А І В   (Де А, В - прості умови), виконано, коли виконано кожне з двох вхідних в нього простих умов.

нехай А   - зверху вільно,В - праворуч вільно,тоді складене умова   А І В   - зверху вільно І справа вільно.


складений умова А ЧИ В виконано, коли виконано хоча б одне з двох вхідних в нього простих умов: зверху вільно АБО справа вільно
складений умова НЕ А   - виконано, коли не виконана умова А.

приклад:Нехай А - клітина зафарбована (просте умова).

П роверка складеного умови НЕ А:

а) А - виконано, НЕ А (НЕ закрашено) - не виконано.

б) А - не виконано, НЕ А (НЕ закрашено) - виконано.


команда розгалуження

розгалуження -форма організації дій, при якій в залежності від виконання або невиконання деякої умови здійснюється або одна, або інша послідовність дій.

Загальний вигляд команди ЯКЩО:

ЯКЩО ТО ІНАКШЕ

КІНЕЦЬ

У мові КУМІР:

Повний розгалуження: Неповна розгалуження:
якщо   то   якщо   то

інакше

все все


допоміжний алгоритм   - алгоритм, вирішальний деяку підзадачу основного завдання.

В системі КУМІР допоміжні алгоритми пишуться в кінці основної програми (після службового слова кін), Викликаються на виконання в основою програмою по імені.

В опитування і завдання

1. Наведіть всі алгоритми з трьох команд, які перемістять Робота з вихідного положення в клітку Б.

Чи існує для цього завдання алгоритм, при виконанні якого Робот робить:

а) два кроки; б) чотири кроки; в) п'ять кроків; г) сім кроків?


  1. Петя склав алгоритм, що переводить Робота з клітки А в клітку Б з зафарбовуванням якихось клітин. Що повинен зробити Коля з цим алгоритмом, щоб отримати алгоритм, що переводить Робота з Б в А і зафарбовувати ті ж клітини?


7. Відомі два допоміжних алгоритму Робота

Намалюйте, що вийде при виконанні Роботом наступних основних алгоритмів:


а)

нц 5 разів


узор_1

вправо; вправо;


б)

нц 7 разів


узор_2

вправо; вправо


в)
вправо; вправо; вправо

вгору; вгору

вправо; вправо; вправо

вниз; вниз


г)
вправо; вправо
вправо; вправо

8. Складіть алгоритми, під керуванням яких Робот зафарбувати зазначені клітини:




9. Відомо, що десь правіше Робота є стіна. Складіть алгоритм, під керуванням якого Робот зафарбувати ряд клітин до стіни і повернеться в початкове положення.

10. Відомо, що десь правіше Робота є зафарбована клітина.

З залиште алгоритм, під керуванням якого Робот зафарбувати ряд клітин до зафарбованою клітини і повернеться в початкове положення.

11. Відомо, що Робот знаходиться поруч з лівим входом в горизонтальний коридор.

12. Відомо, що Робот знаходиться десь в горизонтальному коридорі. Жодна з клітин коридорах зафарбована.

Складіть алгоритм, під керуванням якого Робот зафарбувати всі клітини цього коридору і повернеться в початкове положення.


13. У ряду з десяти клітин правіше Робота деякі клітини зафарбовані.

З залиште алгоритм, який зафарбовує клітини:

а) нижче кожної зафарбованою клітини;

б) вище і нижче кожної зафарбованою клітини.


14. Що можна сказати про правильність наступного фрагмента алгоритму?

нц поки   клітина зафарбована

ЯКЩО   праворуч вільно ТО

вправо; зафарбуй

до

ц

15. Напишіть програму, за допомогою якої Робот зможе потрапити в клітку Б у всіх трьох лабіринтах.


16. Напишіть програму, дотримуючись якої Робот зможе пройти по коридору від лівого нижнього кута поля до правого верхнього. Коридор має ширину одна клітина і тягнеться в напрямку зліва-знизу нагору. Приклад можливого коридору зображений на малюнку.

З



адачі ДПА


  1. Корідор1. Робот знаходиться десь в вертикальному коридорі. Жодна з клітин коридорах зафарбована. Скласти алгоритм, під керуванням якого Робот зафарбувати всі клітини цього коридору і повернеться в початкове положення.

  1. До
    треба

    дано
    орідор2. Робот знаходиться у верхній клітці вузького вертикального коридору. Ширина коридору - одна клітина, довжина коридору може бути довільною.

Можливий варіант початкового розташування Робота наведено на малюнку (Робот позначений буквою «Р»)

Напишіть для Робота алгоритм, зафарбовувати все клітини всередині коридору і повертає Робота в вихідну позицію. Наприклад, для наведеного вище рисунка Робот повинен зафарбувати наступні клітини (см.рисунок):


  1. На нескінченному полі є довга горизонтальна стіна. Довжина стіни невідома. Робот знаходиться в одній з клітин безпосередньо зверху від стіни. Початкове положення Робота також невідомо. Одне з можливих положень:
Н




треба

дано
апішіте алгоритм для Робота, зафарбовувати все клітини, розташовані вище стіни і прилеглі до неї, незалежно від розмірів стіни і початкового положення Робота. Наприклад, для наведеного малюнка Робот повинен зафарбувати наступні клітини:

Кінцеве положення Робота може бути довільним. При виконанні алгоритму Робот не повинен руйнуватися.




  1. На нескінченному полі є довга вертикальна стіна. Довжина стіни невідома. Робот знаходиться в одній з клітин, розташованої безпосередньо праворуч від стіни. Початкове положення робота також невідомо. Одне з можливих положень робота приведено на малюнку (робот позначений буквою «Р»): Напишіть на створення алгоритм, зафарбовувати всі прилеглі до стіни клітини: зліва, починаючи з верхньої НЕ зафарбованою і через одну; праворуч, починаючи з нижньої зафарбованою і через одну. Робот повинен зафарбувати тільки клітини, що задовольняють даній умові. Наприклад, для наведеного вище рисунка робот повинен зафарбувати наступні клітини (див. Малюнок): Кінцеве розташування робота може бути довільним. Алгоритм повинен вирішувати задачу для довільного розміру стіни і будь-який допустимої початкової позиції робота. При виконанні алгоритму Робот не повинен руйнуватися.


Напишіть для Робота алгоритм, зафарбовувати все клітини, розташовані лівіше вертикальної стіни і вище горизонтальної стіни і прилеглі до них. Робот повинен зафарбувати тільки клітини, що задовольняють даній умові. Наприклад, для наведеного вище рисунка Робот повинен зафарбувати наступні клітини (див. Малюнок).


Н апішіте для Робота алгоритм, зафарбовувати прилеглі до стіни клітини, зверху і знизу, починаючи з лівої і через одну. Робот повинен зафарбувати тільки клітини, що задовольняють даній умові. Наприклад, для пріведѐнного малюнка а) Робот повинен зафарбувати наступні клітини (див. Рис. Б).

Кінцеве положення Робота може бути довільним. Алгоритм повинен вирішувати задачу для довільного розміру стіни і будь-який допустимої початкової позиції Робота.



Р

  1. На нескінченному полі є довга вертикальна стіна. Довжина стіни невідома. Робот знаходиться в одній з клітин, розташованої безпосередньо слевав від стіни. Початкове положення робота також невідомо. Одне з можливих положень робота приведено на малюнку (робот позначений буквою «Р»):
Напишіть для робота алгоритм, зафарбовувати всі прилеглі до стіни клітини:

  • зліва все;

  • праворуч, починаючи з верхньої незафарбовані і через одну.
Робот повинен зафарбувати тільки клітини, що задовольняють даній умові.

B

1102_ГІА2011

На нескінченному полі є дві горизонтальні стіни. Довжина стін невідома. Відстань між стінами невідомо. Робот знаходиться над нижньою стіною в клітці, розташованої у її лівого краю. Напишіть для Робота алгоритм, зафарбовувати все клітини, розташовані вище нижньої стіни і нижче верхньої стіни і прилеглі до них. Робот повинен зафарбувати тільки клітини, що задовольняють даній умові. Наприклад, для наведеного вище рисунка робот повинен зафарбувати наступні клітини (див. Малюнок):

Кінцеве розташування робота може бути довільним. Алгоритм повинен вирішувати задачу для довільного розміру поля і будь-якого допустимого розташування стін всередині прямокутного поля. При виконанні алгоритму Робот не повинен руйнуватися.


В

1103_ГІА_2011


На нескінченному полі є горизонтальна стіна. Довжина стіни невідома. Від правого кінця стіни вниз відходить вертикальна стіна також невідомої довжини. Робот знаходиться над горизонтальної стіною   в клітці, розташованої у її лівого краю. На малюнку вказано один з можливих способів розташування стін і Робота (Робот позначений буквою «Р»).

Напишіть для Робота алгоритм, зафарбовувати все клітини, розташовані вище горизонтальної стіни і правіше вертикальної стіни і прилеглі до них. Робот повинен зафарбувати тільки клітини, що задовольняють даній умові. Наприклад, для наведеного вище рисунка Робот повинен зафарбувати наступні клітини (див. Малюнок).

Методичний посібник для вчителів інформатики. Євграфова Ольга Володимирівна, гімназія №8 г.о. Коломна, 2013 рік В процесі вивчення предмета «Інформатика і ІКТ» учні не тільки засвоюють інформаційну культуру (культуру грамотного спілкування з комп'ютером, оформлення документа, електронного спілкування), а й освоюють ази програмування. Однією з найбільш успішних вітчизняних розробок у цій галузі є система програмування Кумир. У ній учні можуть отримати практичні навички по створенню і налагодженні алгоритму, працюючи з виконавцями Робот і Чертѐжнік. Перевагами цієї системи є можливість російськомовного написання команд на шкільному алгоритмічній мові і наочність одержуваного результату виконання алгоритму. Система кумира розроблена виходячи з потреб російської системи освіти. Її особливості:      вільно поширювана; багатоплатформенна; нульові вимоги до ресурсів; підтримується російської академією наук; в числі розробників - автори багатьох підручників і навчальних посібників з інформатики;  безкоштовну програмну оболонку Кумир можна знайти на сайті http://www.niisi.ru/kumir/. На жаль, автори нових підручників з інформатики приділяють недостатньо уваги або взагалі обходять стороною даних виконавців. У той же час розробники ДПА та -1-

p. 2

   ЄДІ включають завдання з використанням даних виконавців в завдання екзаменаційних робіт. Тема вивчається в 9 класі в розділі «Алгоритмізація та програмування». На вивчення теми відводиться 9 годин. Учні повинні знати: що таке виконавець; СКІ Робота, середу виконавця Робот; що таке алгоритм; в чому полягають основні властивості алгоритму; способи запису алгоритмів: блок-схеми, навчальна алгоритмічна мова; основні алгоритмічні конструкції: слідування, розгалуження, цикл; призначення допоміжних алгоритмів. Учні повинні вміти: розуміти опису алгоритмів на навчальному алгоритмічній мові; виконати трасування алгоритму для відомого виконавця; складати лінійні, розгалужуються і циклічні алгоритми управління виконавця Робот; виділяти підзадачі; визначати і використовувати допоміжні алгоритми. Тематичний план уроків: № п / п 1. 2. 3. 4. 5. Число Теочасов рія Виконавець Робот. Система команд виконавця. Состав1 0,5 ня лінійних алгоритмів. Циклічні алгоритми. 3 1 Практична робота №1. Складання та налагодження циклічних алгоритмів. Розгалуження і послідовна деталізація алгоритму. 2 1 Практична робота №2. Складання та налагодження циклічних і алгоритмів, що розгалужуються. Допоміжні алгоритми та підпрограми. 2 0,5 Пр. раб. №3. «Використання допоміжних алгоритмів». Контрольна робота. «Створення алгоритму в середовищі іспол1 вача» Тема уроку Практика 0,5 2 1 1,5 1 Матеріали до уроків по темі « навчальний виконавець   Робот »: -2-

p. 3

   Урок 1. Виконавець Робот. Система команд виконавця. Робот рухається при виконанні програми в прямокутному картатому поле, між клітинами якого можуть бути розташовані стіни. Поле викликається на екран по кнопці «Вікно Робота», яка розташована на панелі інструментів. Поле програмних кодів Робота. Робот вміє виконувати команди-накази і команди-питання. Команди-накази: вправо, вліво, вгору, вниз, зафарбувати. Якщо на шляху виявляється стіна, то команда не може бути виконана. Для безпосереднього управління Роботом використовується дистанційний пульт. За допомогою кнопок на пульті, людина віддає відповідні команди, і Робот виконує їх. Для програмного управління недостатньо знати, які команди і в якій послідовності треба виконати. Потрібно ще записати ці команди в формі, зрозумілою для комп'ютера, тобто оформити у вигляді алгоритму. У найпростішому випадку алгоритм для Робота записується так: Ім'я алгоритму - це послідовність символів або слів, розділених пробілами. Перший символ імені не повинен починатися з цифри. Правильні імена: g, sum, периметр ника, Квітень 12, дванадцяте квітня, коліч_11_кл. «Правильне» ім'я виділиться синім кольором. використовувати Робот алг імя_алгорітма поч послідовність команд кін Для кращого розуміння алгоритму в тілі програми можна використовувати коментарі. Коментарі починаються знаком |. Якщо коментарі займають кілька рядків, то на початку кожного рядка повинен стояти знак |. На хід виконання алгоритму коментарі не роблять ніякого дії. Приклад 1. Програма «Хід конем» (перемістити Робота з точки А в точку Б). Початковий стан: Програма: Результат: Правила алгоритмічного мови дозволяють записувати в одному рядку кілька команд через крапку з комою. -3-

p. 4

Приклад 2. Потрібно перемістити Робота з точки А в точку Б. Шлях, який повинен пройти Робот, можна розбити на п'ять однакових ділянок. Команди проходження кожної ділянки зручно згрупувати в один рядок - це скорочує запис алгоритму і робить його більш зрозумілим. Зміна обстановки Робота. Для того, щоб змусити Робота діяти в новій обстановці, її необхідно завантажити, використовуючи наступні команди головного меню: Вибрати елемент «Робот» «Змінити стартову обстановку» Відкрити потрібну папку і вибрати файл. Створення нової обстановки. Для створення нової обстановки для Робота, необхідно виконати команди головного меню: Вибрати елемент «Інструменти» «Редагувати стартову обстановку». У вікні «Обстановка» вибрати елемент «Обстановка» «Нова обстановка» Задати кількість рядків і стовпців. Клацанням миші встановити стіни і перемістити Робота на потрібну клітину. Зберегти обстановку, використовуючи команди: «Обстановка» «Зберегти ЯК» Задати ім'я файлу і папку для розміщення. Натиснути копку «Зберегти». Поставити / Прибрати стіну - клацнути по кордоні між клітинами. Зафарбувати / Зробити чистої клітку - клацнути по клітці. Поставити / Прибрати точку - клацнути по клітці, утримуючи клавішу Ctrl. Встановити радіацію, мітки - натиснути правою клавішею миші. Перемістити Робота - тягти мишею. «Виконання» Виконання програми. «Виконати безперервно» Самостійна робота на комп'ютері: 1. Завантажити нову обстановку, перевести Робота в точку «Б», зафарбувавши по шляху точки, відмічені символом «точка»: «Практикум для Робота» папка «1» завдання «В» (матеріали з сайту К. Полякова http://kpolyakov.narod.ru), скласти програму, відкрити вікно Робота і запустити програму на виконання. Зберегти програму у своїй папці з ім'ям «1_В». 2. Створити нову обстановку, зберегти її у своїй папці з ім'ям «Обстановка_1». Скласти програму для нової обстановки і зберегти її в своїй папці з ім'ям «новая_обстановка_1». 3. ** Вирішити інші завдання з папки №1 практикуму. -4- Б

p. 5

Урок 2. Циклічні алгоритми. Цикл N - раз. Завдання на повторення: Петя склав алгоритм для Робота «Прогулянка». Коля стер в ньому одну команду. Визначте, яку команду стер Коля, якщо відомо, що Робот повинен повернутися в початковий стан. Відповідь: вправо використовувати Робот алг Прогулянка поч. вгору; вправо. ? . вниз; вліво; вліво кін нц N раз · серія команд КЦ При складанні алгоритмів часто зустрічаються випадки, коли деяку послідовність команд потрібно виконати кілька разів поспіль. Наприклад, приклад №2 минулого уроку. Для спрощення запису алгоритму в таких випадках можна використовувати команду - «Цикл N-раз». N - ціле вираз, що задає число повторень. При виконанні алгоритму послідовність команд циклічно повторюється вказане число раз. Це число може бути нульовим і навіть негативним. Ці випадки не вважаються помилковими, просто тіло циклу не буде виконано жодного разу, а комп'ютер відразу перейде до виконання команд, записаних після кц. Приклад 1. Потрібно перемістити Робота з точки А в точку Б. А Б Приклад 2. Зафарбувати ряд з 16 клітин. Приклад 3. Зафарбувати прямокутник розміром 5 (рядків) х 6 (стовпців). використовувати Робот алг Прямокутник поч нц 5 разів кц кін Цикл може розташовуватися усередині іншого циклу. Тоді він називається вкладеним. -5-

p. 6

   Самостійна робота на комп'ютері: Приклад 4. Нехай треба перевести Робота з початкового положення в точку, позначену зірочкою і по шляху зафарбувати клітини лабіринту. Створити обстановку і програму. Зберегти файли в своїй папці. Приклад 5. Перевести Робота з початкового положення на Базу і зафарбувати клітини, відмічені точкою. Створити обстановку і програму. Зберегти файли в своїй папці. Приклад 6. Необхідно провести Робота по лабіринту з початкового положення в точку A. Приклад 7. Необхідно провести Робота уздовж коридору з початкового положення до точки A, заглядаючи в кожен бічний коридор. Приклад 8. Складіть програму зафарбовування клітин поля, зазначених *. Початкове положення Робота позначення значком ◊. Приклад 9 *. На поле виконавця виставлені стіни. Необхідно знайти початкове, оптимальне положення виконавця і написати програму, результатом виконання якої будуть зафарбовані клітини (так, як показано на малюнку). ** Скласти програми, використовуючи папку «Практикум для Робота» _ №2. -6-

p. 7

Урок 3. Цикл Поки. Нам необхідно навчитися складати універсальні алгоритми, які не залежатимуть від відстаней між Роботом і стіною, довжиною стін. Для цього будемо використовувати новий оператор циклу. нц поки умова серія команд КЦ При виконанні циклу комп'ютер повторює наступні дії:  перевіряє умова;  якщо умова виконується, то виконуються команди тіла циклу і знову перевіряє умова і т.д.  якщо умова не дотримується, то виконання зліва стіна зліва вільно циклу завершується, і виконуються команди, праворуч стіна праворуч вільно записані після кц. знизу стіна знизу вільно  умови циклу (команди-питання): зверху стіна зверху вільно клітина зафарбована клітина чиста Зауваження.  Якщо умова не дотримується з самого початку, то тіло циклу не виконається жодного разу!  Виконання циклу може не завершитися, якщо умова весь час буде дотримуватися. Така ситуація зазвичай виникає в результаті помилок в НЦ ПОКИ справа вільно складанні алгоритмів. вправо; вліво Приклад нескінченного алгоритму (праворуч не мають муру навколо): КЦ Умови бувають прості і складові. Просте умова - це зазвичай якась перевірка. Прикладом може служити будь-яка команда-питання Робота. Складений умова формується з декількох простих умов з використанням службових слів І, АБО, НЕ. Якщо між простими умовами варто І, то для виконання складеного умови необхідно, щоб вірними виявилися обидва простих. Якщо між простими умовами варто АБО, то для виконання складеного умови досить, щоб вірним виявилося хоча б одне просте умова. Приклад 2. Робот Приклад 1. Педолжен зафарбувати реместіть Роклеткі, зазначені бота на Базу. на малюнку. Довжина стіни і відстань до стіни невідомі. використовувати Робот алг На Базу поч. нц поки зверху вільно. . вгору. кц. нц поки зверху стіна. . вправо. кц. вгору кін -7-

p. 8

▪ Самостійна робота на комп'ютері: Десь в поле Робота знаходиться стіна у вигляді куточка, розміри якої невідомі. Робот з довільної клітини зліва від стіни, але обов'язково навпроти неї, повинен дійти до стіни і зафарбувати всі клітини уздовж стіни за нею, як показано на малюнку. ▪ Необхідно перевести Робота з початкового положення в точку A, зафарбовуючи при цьому зазначені клітини поля. Розміри стін і відстань між ними можуть бути довільні. ▪ Скласти програми, використовуючи папку «Практикум для Робота»  Папка_4_Задачі_А_С_D  Папка_5_Задачі_A_B_C_D Урок 4. Практична робота №1. Циклічні алгоритми для Робота. Варіант 1 Завдання 1.Закрасіть клітини, що знаходяться зліва від стіни або зверху стіни. Відстань від Робота до стіни невідомо. Довжина стін невідома. Створити обстановку і написати програму. Файли зберегти у своїй папці. Р Завдання 2. Виконавець Робот знаходиться десь всередині обмеженою квадратної області. Довжина сторони квадрата невідома. Напишіть для Робота алгоритм, зафарбовувати все клітини, розташовані на діагоналі квадрата з лівого верхнього в правий нижній кут. Створити обстановку і написати програму. Файли зберегти у своїй папці. Завдання 3. Провести виконавець з клітки А в клітку В, зафарбувавши при цьому відмічені клітини. Довжина стін і відстань між ними невідомі. Створити обстановку і написати програму. Файли зберегти у своїй папці. -8-

p. 9

Завдання 4. Необхідно перевести Робота з початкового положення (◊) в точку A, зафарбовуючи при цьому зазначені клітини поля. Розміри стін і відстань між ними можуть бути довільні. Завдання 5. На нескінченному полі є ле- Сєнка. Кількість сходинок може бути будь-яким. Нижня горизонтальна стіна триває нескінченно вправо, верхня горизонтальна стіна йде нескінченно вліво. Робот знаходиться десь над нижньою горизонтальною стіною. Зафарбувати клітини, розташовані уздовж вертикальної частини сходинок (див. Рис.). Кінцеве положення Робота будь-яке. Створити обстановку і написати програму. Файли зберегти у своїй папці. Кожна сходинка має розмір: 2 клітини по горизонталі і 2 клітини по вертикалі. Варіант 2 Завдання 1. Напишіть для Робота алгоритм, зафарбовувати все клітини, розташовані вздовж лівої бокової і над нижньою сторонами прямокутника і прилеглі до стіни. Рас Р стояння від Робота до стін і довжина стін невідомі. Створити обстановку і написати програму. Файли зберегти у своїй папці. Завдання 2. Виконавець Робот знаходиться десь всередині обмеженою квадратної області. Довжина сторони квадрата невідома. Напишіть для Робота алгоритм, зафарбовувати все клітини, розташовані на діагоналі квадрата з правого верхнього в лівий нижній кут. Створити обстановку і написати програму. Файли зберегти у своїй папці. Завдання 3. Провести виконавець з клітки А в клітку В, зафарбувавши при цьому відмічені клітини. Довжина стін і відстань між ними невідомі. Створити обстановку і написати програму. Файли зберегти у своїй папці. -9-

p. 10

Завдання 4. Необхідно перевести Робота з початкового положення (◊) в точку A, зафарбовуючи при цьому зазначені клітини поля. Розміри стін і відстань між ними можуть бути довільні. Завдання 5. На нескінченному полі є ле- Сєнка. Кількість сходинок може бути будь-яким. Нижня горизонтальна стіна триває нескінченно вліво, верхня горизонтальна стіна йде нескінченно вправо. Робот знаходиться десь над нижньою горизонтальною стіною. Зафарбувати клітини, розташовані уздовж вертикальної частини сходинок (див. Рис.). Кінцеве положення Робота будь-яке. Створити обстановку і написати програму. Файли зберегти у своїй папці. Кожна сходинка має розмір: 2 клітини по горизонталі і 2 клітини по вертикалі. Урок 5. Розгалужуються алгоритми. Команда «якщо _ то _ інакше _ все» Загальний вигляд команди: якщо умова то дії 1 інакше дії 2 всі Структура команди: після перевірки умови виконуються дії 1, якщо умова істинна, в іншому випадку - дії 2. Після цього виконуються команди, записані після слова все. Гілка інакше може бути відсутнім (неповне розгалуження). В цьому випадку команда має вигляд: якщо умова то дії все Якщо умова не дотримується, то відразу виконуються команди, записані після службового слова все. Приклад 1. Створити програму, котра проводить Робота через коридор довільної довжини. По дорозі Робот повинен зафарбувати всі клітини, у яких знизу не мають муру навколо. Кількість отворів невідомо. - 10 -

p. 11

   Приклад 2. Перевести Робота в точку Б і зафарбувати клітини, відмічені точкою. Довжина стіни і кількість «тупиків» невідомо. використовувати Робот алг На Базу поч нц поки справа вільно вправо якщо зверху вільно то вгору зафарбувати вниз все кц вниз кін Приклад ** Підрахувати, скільки в коридорі зафарбованих клітин (для виконання треба розібрати додатково конструкції: цілий рах | опис змінної цілого типу рах: = рах + 1 | збільшення змінної на 1 висновок рах | висновок значення змінної на екран Самостійна робота на комп'ютері: Створити обстановку і вирішити задачу. завдання 1. Скласти алгоритм для проходження роботом обстановки: завдання 2. Скласти програму, в якій Робот долає будь-яку кількість перешкод і доходить до стіни. Перешкоди можна розташовувати де завгодно. - 11 -

p. 12

Завдання 3. Зафарбувати клітини, відмічені точками. Завдання 4. використовувати Робот алг На Базу поч зафарбувати нц поки справа вільно вправо якщо зверху вільно то вгору; зафарбувати; вниз інакше зафарбувати все кц вниз кін Завдання 5. Зафарбувати клітини, розташовані поруч зі стінами. Скласти алгоритм, зафарбовувати все клітини, що знаходяться між двома стінами. Яка стіна перебуває лівіше невідомо. використовувати Робот алг между_стенамі поч нц поки (не зверху вільно) або (не знизу вільно) вправо якщо (не зверху вільно) і (не знизу вільно) то зафарбувати все кц кін використовувати Робот алг уч5 поч вправо нц поки не знизу вільно зафарбувати; вправо кц зафарбувати; вниз нц поки зліва вільно зафарбувати; вліво кц нц поки не зліва вільно зафарбувати; вниз кц зафарбувати; вліво; зафарбувати; вгору; нц поки зверху вільно зафарбувати; вгору кц нц поки не зверху вільно зафарбувати; вліво кц кін Завдання 6 **. Робот знаходиться на початку коридору. В коридорі є тупики зверху і знизу невідомої довжини, але їх розташування не буває навпроти один одного. Довжина коридору також невідома. Написати алгоритм зафарбовування всіх тупиків і виходу з коридору. - 12 -

p. 13

   використовувати Робот алг тупики поч. нц поки (зверху стіна) або (знизу стіна). . вправо. . якщо (зверху вільно) і (знизу стіна). . . то. . . . нц поки зверху вільно. . . . . вгору; зафарбувати. . . . кц. . . . нц поки знизу вільно. . . . . вниз. . . . кц. . Усе. . якщо (знизу вільно) і (зверху стіна). . . то. . . . нц поки знизу вільно. . . . . вниз; зафарбувати. . . . кц. . . . нц поки зверху вільно. . . . . вгору. . . . кц. . Усе; . кЦ; кін Команди, виділені червоним кольором потребує, щоб зупинитися при виході з коридору. Урок 6. Практична робота №2. Циклічні і розгалужуються алгоритми для Робота. Рішення завдань з використань КІМ ДПА. Зауваження. При складанні алгоритмів завдання необхідно вирішити в загальному вигляді, тобто вид фігури визначено, але довжини сторін, кількість сходинок і інші параметри можуть змінюватися. Програма повинна працювати для будь-якої фігури схожого виду! Завдання 1. Створіть обстановку і напишіть алгоритм, зафарбовувати все клітини, що знаходяться правіше вертикальних ділянок стіни. використовувати Робот алг завдання 1 поч вниз; вправо. нц поки зверху вільно. . вгору зафарбувати. кц. нц поки не зверху вільно. . вправо. кц. вгору. нц поки не зліва вільно. . зафарбувати; вгору. кц кін - 13 -

p. 14

використовувати Робот алг завдання 2 поч. нц поки справа вільно. . вправо. кц. нц поки не справа вільно. . вгору. кц. вправо. нц поки не справа вільно. . зафарбувати вгору; вправо. кц кін Висота кожного ступеня одна клітина, ширина - 2 клітини. Завдання 2. Напишіть алгоритм, зафарбовувати все клітини, що знаходяться над сходами. Завдання 3. Зафарбувати всі клітини, що знаходяться над сходами, що спускається зліва направо. використовувати Робот алг завдання 3 поч. нц поки знизу вільно. . вниз; вліво; вліво. кц. нц поки не зліва вільно. . зафарбувати; вправо. . зафарбувати; вправо. . вниз. кц кін Завдання 4. Зафарбувати клітини лабіринту. використовувати Робот алг Лабіринт поч. вправо. нц поки справа стіна. . зафарбувати; вгору. . зафарбувати; вгору. . зафарбувати; вправо. . зафарбувати; вниз. . зафарбувати; вниз. . зафарбувати; вправо. кц кін Завдання 5 ** Виконавець перебуває в довільній клітці, але обов'язково напроти стіни (малюнок зверху). В результаті необхідно зафарбувати клітини так, як показано на малюнку знизу. - 14 -

p. 15

використовувати Робот алг Вихід поч. нц поки справа вільно вправо; . кц. нц поки справа стіна вниз; . кц. вправо; вгору. нц поки (зліва стіна і зверху вільно) або (зверху стіна і праворуч вільно) або (праворуч стіна і знизу вільно) або (знизу стіна і зліва вільно). . якщо (зліва стіна) і (зверху вільно). . . то. зафарбувати; вгору. . Усе. . якщо (зверху стіна) і (праворуч вільно). . . то. . зафарбувати; вправо. . Усе. . якщо справа стіна і знизу вільно. . . то. . зафарбувати; вниз; . . Усе. . якщо знизу стіна і зліва вільно. . . то. . . зафарбувати; вліво; . . Усе; . кЦ; кін Урок 7. Допоміжні алгоритми При вирішенні деяких завдань зручно розбити їх на більш дрібні підзадачі, кожну з яких можна оформити як самостійний алгоритм. У цьому випадку спочатку складається так званий основний алгоритм, в якому для вирішення підзадач використовуються виклики допоміжних алгоритмів, які дописують пізніше. Такий спосіб вирішення називається методом послідовного уточнення. Він дозволяє працювати над проектом групі програмістів, кожен при цьому вирішує свою підзадачу. Команда виконання допоміжного алгоритму називається викликом і записується в тілі основного алгоритму. В алгоритмічній мові спочатку записується основний алгоритм, нижче поспіль записуються допоміжні. Приклад 1. Розглянемо обстановку з уроку №1. Робота треба перевести в клітку, позначену точкою. використовувати Робот алг Коридор поч обхід; обхід; обхід; обхід; обхід кін алг обхід поч вгору; вгору; вправо вниз; вниз; вправо кін - 15 -

Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартної обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку. "Title =" (! LANG: робот\u003e Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартною обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку." class="link_thumb"> 3 !}    Робот\u003e Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартної обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку. Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартної обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку. "\u003e Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартною обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку. "\u003e Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартної обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку. "Title =" (! LANG: робот\u003e Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартною обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку."> title="Робот\u003e Змінити стартову обстановку Файл із стандартною обстановкою входить в поставку Кумира (10x16.fil). Стандартної обстановкою є порожня обстановка максимально допустимого розміру 10 * 16 з Роботом в лівому верхньому кутку."> !}




Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда «Нова обстановка» мен "title =" (! LANG: Інструменти-\u003e Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда «Нова обстановка» мен" class="link_thumb"> 5 !}    Інструменти-\u003e Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда «Нова обстановка» меню «Обстановка» Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда «Нова обстановка» мен "\u003e Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда« Нова обстановка »меню« Обстановка » "\u003e Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда «Нова обстановка» мен "title =" (! LANG: Інструменти-\u003e Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда «Нова обстановка» мен"> title="Інструменти-\u003e Редагувати стартову обстановку Поставити / забрати стіну клацнути по кордоні між клітинами. Зафарбувати / зробити чистою клітку клацнути по клітці. Перемістити Робота тягти мишею. Змінити розміри обстановки команда «Нова обстановка» мен"> !}






Опис алгоритму Алгоритм мовою кумира записується так: алг тіп_алгорітма імя_алгорітма (опісаніе_параметров) · дано условіе_пріменімості_алгорітма · треба цель_виполненія_алгорітма поч · послідовність команд кін Опис алгоритму складається з: заголовка (частина до службового слова поч) тіла алгоритму (частина між словами поч і кін)


Система команд виконавця «Робот» включає: Кумир-програма, що управляє Роботом, повинна починатися з рядка використовувати Робот 5 команд, що викликають дії Робота (вліво, вправо, вгору, вниз, зафарбувати) 10 команд перевірки умов: - 8 команд виду [зліва / праворуч / знизу / зверху] [стіна / вільно] - 2 команди виду клітина [зафарбована / чиста]





















Використовувати Робот алг УЗОР поч нц 2 раз нц 4 раз зафарбувати; вниз вниз; зафарбувати; вправо вгору; зафарбувати; вгору; вправо вправо кц · зафарбувати; вниз вниз; зафарбувати; вправо вгору; зафарбувати; вниз; нц 13 раз вліво кц нц 4 раз зафарбувати; вниз вниз; зафарбувати; вправо вгору; зафарбувати; вгору; вправо; вправо кц · зафарбувати; вниз вниз; зафарбувати; вправо вгору; зафарбувати; кін
















Завдання 1.Закрасіть прямокутник, обгороджений стінами, робот десь всередині прямокутника 2.Левая робота є зафарбована клітина, зафарбувати всі клітини між роботом і цією клітиною і повернутися назад 3.Закрасіть коридор невідомої довжини, робот десь в коридорі 4.Робот в клітці зверху біля стіни невідомої довжини, зафарбувати всі клітини навколо стіни







Завдання. У горизонтальному коридорі є тупики знизу розміром в 1 клітку, робот в лівій клітці коридору. Вивести робот з коридору вправо і зафарбувати тупики. На полі немає стін. В ряду з 10 клітин правіше робота деякі клітини зафарбовані. Зафарбувати клітини нижче кожної зафарбованою. Робот знаходиться всередині прямокутника. Деякі клітини в лівій вертикалі прямокутника зафарбовані. Зафарбувати відповідні їм клітини в правій вертикалі.