- •1.Інформатика та інформація
- •Успіхів тобі! Питання та завдання
- •2.Алгоритми та виконавці
- •Питання та завдання
- •3.Виконавець Черепашка
- •Систему команд:
- •4.Команда color
- •6.Програмний режим в logo
- •7.Цикли в logo та в житті
- •8. Коло
- •9.Кругові циклічні орнаменти
- •10. Вкладені цикли
- •11. Процедури
- •12. Програми з кількома процедурами
- •13. Величини в logo
- •14. Процедури з величинами
- •15. Величини в циклі
- •16.Створення орнаментів
12. Програми з кількома процедурами
Уявимо собі режим роботи повара в їдальні протягом скажімо, місяця. В меню мають входити різні страви, але час від часу вони повторюються. Ми вже з’ясували в минулому пункті, що рецепт можна розглядати як певну процедуру. Тоді виходить, повар протягом місяця виконує одну велику програму з багатьма процедурами.
Кравець, який шиє костюмчики на дівчат та хлопців, теж час від часу після отримання відповідного замовлення виконує різні процедури для пошиття спідниці, штанців тощо.
Черепашка теж може виконувати програми з кількома процедурами. Реба лише спочатку навчити її усім цим діям. Це дасть змогу в основній частині програми викликати них.
Розглянемо малюночки:
Всі вони утворені з однакових квадратиків та однакових рівносторонніх трикутничків, усі сторони яких становлять по 10. Тому доцільно спочатку навчити Черепашку відповідним процедурам KVіTR. А щоб створити малюнок, нам доведеться викликати ці процедури в такій послідовності та стільки разів, скільки необхідно для створення даного малюнку. Отже, маємо програми:
до мал. 27а до мал. 27б
TO KV TO KV
DRAW DRAW
REPEAT 4 REPEAT 4
[ FORWARD 10 [ FORWARD 10
RIGHT 90 ] RIGHT 90 ]
RIGHT 90 RIGHT 90
FORWARD 10 FORWARD 10
LEFT 90 LEFT 90
NODRAW NODRAW
END END
TO TR TO TR
DRAW DRAW
RIGHT 30 RIGHT 30
REPEAT 3 REPEAT 3
[ FORWARD 10 [ FORWARD 10
RIGHT 120 ] RIGHT 120 ]
RIGHT 60 RIGHT 60
FORWARD 10 FORWARD 10
LEFT 90 LEFT 90
NODRAW NODRAW
END END
TR KV
KV TR
TR TR
RIGHT 90 TR
FORWARD 10 KV
LEFT 90 RIGHT 90
TR FORWARD 20
KV RIGHT 90
TRKV
KV
KV
Як видно з наведених прикладів, спочатку в програмі йдуть тексти всіх процедур. Кожна з них обмежена словами TOтаEND. Після чого в основній частині програми виклик цих процедур за їх іменами здійснюється у відповідності з малюнками.
Команди RIGHT 90, FORWARD 10, LEFT 90 в основній частині першої програми призначені для того, щоб зробити належний відступ між елементами мал..27а. На мал..27в усі квадратики розташовані інакше, ніж на двох інших. Тому, замість того, щоб кожного разу розвертати Черепашку на 900 вправо перед викликом процедури KV,краще записати саму процедуру таким чином:
TO KV1
DRAW
RIGHT 90
REPEAT 5
[ FORWARD10
RIGHT90 ]
LEFT180
NODRAW
END
Далі основна частина програми матиме вигляд:
TR
KV1
TR
KV1
KV1
TR
Погодься, що доцільне використання процедур у програмі полегшує та скорочує її.
Питання та завдання
1.Наведи приклади алгоритмів з кількома процедурами, які застосовуються в житті.
2.Використовуючи процедури KV,KV1,TR з п.12, виконай у зошиті наступні основні частини програм:
а) KV б)REPEAT8 в)KV1
TR [ KV TR
KV KV1 ] BACK 30
RIGHT 90 LEFT 90
KV KV1
TR LEFT 90
KV FORWARD 20
RIGHT 90 RIGHT 90
KV FORWARD 30
TR KV
KV
RIGHT 90
KV
TR
KV
3.Склади програми для створення наступних малюнків: