Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
6
Добавлен:
04.03.2016
Размер:
747.62 Кб
Скачать

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.Склади програми для створення наступних малюнків:

Соседние файлы в папке 19 і 20 вибирай головне