Гіпермаркет Знань>>Інформатика>>Інформатика 6 клас>>Інформатика: Процедури
ПРОЦЕДУРИ
1. В яких випадках при складанні алгоритму для Черепашки можна використовувати цикли? 2. Пригадайте випадки, коли ви виконували одну й ту саму послідовність дій, але через різні проміжки часу.
Алгоритм з процедурою Маємо все ті ж рівнобедрені прямокутні трикутники(4). Вам відома послідовність команд для малювання одного такого трикутника:
Опусти хвостик
Вперед на 50
Вправо на 90
Вперед на 50
Вліво на 45
Назад на 70
Підніми хвостик
Оскільки маємо чотири рівні між собою трикутники, то в таких випадках ви використовували команду циклу. До цього циклу включалися також і команди переходу від одного трикутника до іншого.
На всіх попередніх мал юнках відстані між рівними об'єктами були рівні, тому й команди переходу від одного об'єкта до іншого теж були однакові і могли бути включені до циклу. На цьому ж малюнку ситуація принципово інша. Відстані між трикутниками різні, тому й команди переходу від одного трикутника до іншого теж будуть різні, а значить, вони не можуть бути включені до циклу.
Якщо ж не використовувати команду циклу, то потрібно в алгоритмі чотири рази повторити одні й ті ж самі сім команд малювання трикутника. Це незручно і зробить алгоритм досить громіздким. А якщо таких трикутників буде не 4, а значно більше?
Щоб спростити запис такого алгоритму, команди, що повинні повторюватись, виносять в окрему частину і дають їй ім'я. Таку частину алгоритму називають процедурою. Щоб викликати на виконання команди процедури, потрібно лише вказати її ім'я. Команда, що складається з імені процедури, називається командою виклику процедури. Ім'я процедури — це довільна послідовність букв і цифр, в якій першою є буква. Великі та малі букви в імені не розрізняються.
Для наведеного малюнка процедура для малювання прямокутного трикутника ПрямТр виглядатиме так:
Проц ПрямТр Початок Опусти хвостик Вперед на 50 Вправо на 90 Вперед на 50 Вліво на 45 Назад на 70 Підніми хвостик Кінець
А сам алгоритм малювання чотирьох трикутників буде таким: Проц ПрямТр Початок Опусти хвостик Вперед на 50 Вправо на 90 Вперед на 50 Вліво на 45 Назад на 70 Підніми хвостик Кінець
ПрямТр Вправо на 45 Вперед на 60 Вліво на 90 ПрямТр Вправо на 45 Вперед на 80 Вліво на 90 ПрямТр Вправо на 45 Вперед на 70 Вліво на 90 ПрямТр
Розглянемо особливості запису і виконання алгоритму, шо містить процедуру.
Якщо алгоритм містить процедуру, то його запис розпочинається із запису цієї процедури.
Запис процедури розпочинається зрядка заголовка, який має вигляд Проц ім'я процедури. У наступному рядку записується спеціальне слово Початок, далі йдуть команди, що входять до процедури, і закінчується запис процедури спеціальним словом Кінець Після цього записуються команди основної частини алгоритму. Зауважимо, що в наведеному прикладі між процедурою і основною частиною алгоритму пропущено один рядок. Це зроблено для зручності сприйняття алгоритму в цілому. Рекомендуємо вам завжди так робити.
Виконання алгоритму з процедурою Черепашка розпочинає виконання алгоритму з процедурою з першої команди основної частини алгоритму. У наведеному алгоритмі це команда ПрямТр. У системі команд виконавця Черепашка команди ПрямТр немає. Це означає, що в алгоритмі повинна бути процедура з таким іменем, і Черепашка починає послідовно виконувати її команди.
Після закінчення виконання команд процедури Черепашка викопує наступну команду основної частини алгоритму Вправо на 45. Коли в основній частині алгоритму знову зустрінеться команда ПрямТр, Черепашка знову виконає команди цієї процедури, після чого виконає наступну команду основної частини алгоритму. І так далі, доки Черепашка не ви конає всі команди основної частини алгоритму.
Алгоритм з кількома процедурами Алгоритм може містити не одну, а кілька процедур. Усі вони мають бути записані послідовно одна за одною па початку алгоритму, і кожна повинна мати своє унікальне для цього алгоритму ім'я.
Наведемо приклад такого алгоритму для малюнка.
Малюнок складається з трьох рівних між собою рівносторонніх трикутників і двох рівних між собою квадратів. Відстані між ними різні. Тому доцільно використати в алгоритмі дві процедури: процедуру для малювання рівностороннього трикутника і процедуру для малювання квадрата.
Проц РівнТр
Початок
Опусти хвостик
Повтори 3 рази
[ Вперед на 40
Вправо на 120 ] Підніми хвостик
Кінець
Проц Квадрат
Початок
Опусти хвостик
Повтори 4 рази [ Вперед на ЗО
Вправо на 90 ] Підніми хвостик
Кінець Вправо на ЗО
РівнТр Вправо на 60 Вперед на 50
Вліво на 90
РівнТр Вправо на 60
Вперед на 55
Вліво на 90
Квадрат
Вправо на 90
Вперед на 60
Вліво на 60
РівнТр Вправо на 60
Вперед на 65
Вліво на 90
Квадрат Звертаємо вашу увагу, що процедури можна використовувати не тільки тоді, коли малюнок містить кілька однакових об'єктів, а й тоді, коли малюнок складається з різних об'єктів.
Так, наприклад, якщо па малюнку один рівносторонній трикутник, один рівнобедрений прямокутний трикутник і один прямокутник, то можна скласти три процедури для малювання кожного З цих об'єктів, а в основній частині алгоритму викликати їх однією командою і переходити до малювання наступного об'єкта.
Такий підхід до складання алгоритму називається процедурним. Алгоритм з процедурами значно легше сприймається, в ньому легше, при потребі, шукати помилки. Крім того, процедури одного алгоритму можуть бути включені й до іншого алгоритму, якщо малюнок, для малювання якого він складається, містить точно такі ж об'єкти.
Це дає змогу створити бібліотеку процедур малювання найбільш поширених об'єктів і використовувати її для складання різноманітних алгоритмів.
Запитання та завдання 1. Що таке процедура? 2. В яких випадках використовують процедури при складанні алгоритмів? 3. Наведіть приклади процедур з оточуючого життя. 4. Як записуються процедури в алгоритмі? 5. Що може бути іменем процедури? 6. Як виглядає команда викл ику процедури? 7. Як виконавець виконує алгоритм, який містить процедури? 8. У чому полягає суть процедурного методу при складанні алгоритму? 9. Складіть алгоритми для Черепашки, використовуючи процедури:
10. Виконайте в зошиті алгоритм (процедури РівиТр, ПрямТр, Квадрат наведені на сторінках 78 і 80):
а) РівнТр Вправо на 90 Вперед на 60 Вліво на 90 РівнТр Вправо на 90 Вперед на 70 Вліво на 90 РівнТр Вправо на 90 Вперед на 80 Вліво на 90 Назад на 50 РівнТр
б) Вправо на 45 ПрямТр Вперед на 80 Вліво на 45 ПрямТр Вперед на 90 Вліво на 45 ПрямТр Вперед на 100 Вліво на 45 ПрямТр
в)Повтори 3 рази [ Вліво на 45 ПрямТр Назад на 80 ]
г) Проц Гірямокутникі Початок Опусти хвостик Повтори 2 рази [ Вперед на 20 Вправо на 90 Вперед на 40 Вправо на 90 ] Підніми хвостик Кінець Прямокутник1 Вправо 90 Вперед на 50 Прямокутникі Вправо 90 Вперед на 60 Прямокутникі Вправо 90 Вперед на 70 Прямокутник1
д) Проц Прямокутник2 Початок Опусти хвостик Повтори 2 рази [ Вперед на 20 Вправо на 90 Вперед на 30 Вправо на 90 ] Підніми хвостик Кінець Повтори 3 рази [ Вправо на 45 Прямокутники Вправо на 45 Вперед на 50 Вліво на 90 ]
е) Повтори 3 рази [ ПрямТр Вправо на 45 Вперед на 70 Вліво на 90 Квадрат Вправо на 90 Вперед на 40 Вліво на 90 ]
Ломаковська Г.В., Колесніков С.Я., Ривкінд Й.Я. Інформатика 5 клас
Вислано читачаму з інтернет-сайту
Реферати, домашня робота, конспекти інформатики, вся інформатика онлайн
акселеративні методи на уроці національні особливості
виділити головне в уроці - опорний каркас нічого собі уроки
відеокліпи нова система освіти
вправи на пошук інформації підручники основні допоміжні
гумор, притчі, приколи, приказки, цитати презентація уроку
додаткові доповнення реферати
домашнє завдання речовки та вікторизми
задачі та вправи (рішення та відповіді) риторичні питання від учнів
закриті вправи (тільки для використання вчителями) рівень складності звичайний І
знайди інформацію сам рівень складності високий ІІ
ідеальні уроки рівень складності олімпійський III
ілюстрації, графіки, таблиці самоперевірка
інтерактивні технології система оцінювання
календарний план на рік скласти пазл з різних частин інформації
кейси та практикуми словник термінів
комікси статті
коментарі та обговорення тематичні свята
конспект уроку тести
методичні рекомендації шпаргалка
навчальні програми що ще не відомо, не відкрито вченими
Если у вас есть исправления или предложения к данному уроку, напишите нам.
Если вы хотите увидеть другие корректировки и пожелания к урокам, смотрите здесь - Образовательный форум.
|