понедельник, 25 апреля 2016 г.

 13.Алгоритм із повтореннями


Для чого в алгоритмах використовують
структуру повторення?
Алгоритм, у якому передбачаеться багаторазове виконання одного
й того самого набору команд, називають циклічним. Наприклад, для
того щоб наповнити водою діжку місткістю 80 л, маючи десятилітрове
відро, потрібно виконувати 8 разів одні й ті самі дії: набрати воду у
відро, вилити воду в діжку.
Герой твору Марка Твена Том Сойєр мав фарбувати огорожу за ци-
клічним алгоритмом: одну й ту саму команду — фарбування стовпчи-
ка огорожі — слід повторювати, доки всю
огорожу не буде пофарбовано.
А щоб вивчити строфу вірша напам’ять,
спочатку її читають, а тоді пробують роз-
повісти по пам’яті. Якщо це не вдається,
то продовжують читати знову — тобто пов-
торюють цю дію кілька разів.
Наведені приклади можна подати
циклічними алгоритмами, оскільки в
кожному з них повторюються деякі дії.
Кількість повторів може бути різною, але
скінченною: діжку можна заповнити за 8
повторень, кількість повторів під час фар-
бування огорожі залежить від кількості
стовпчиків, а кількість повторів під час вивчення вірша залежить від здібностей до запам’ятовування конкретної людини. Для опису цикліч­них алгоритмів використовують алгоритмічну структуру повторення.
Повторення — базова алгоритмічна структура, призначена для організації багаторазового виконання набору команд.
Вираз «багаторазове виконання» означає, що команди будуть вико­нуватися скінченну кількість разів.
Як можна розрізняти повторення?
Кількість повторень у циклічних алгоритмах може бути або зазда­легідь відомою, або ні, тому розрізняють повторення з визначеною та невідомою кількістю повторень. Якщо кількість повторень заздалегідь не відома, то для припинення циклу задається деяка умова, яка і забез­печує скінченність виконання команд, що повторюються.
Команди циклу з визначеною кількістю повторень будуть повторю­ватись до досягнення потрібної кількості повторень. Наприклад, ал­горитм побудови квадрата, у якому 4 рази потрібно повторювати дії «намалювати сторону», «повернути за годинниковою стрілкою на 90 », можна подати графічно (мал. 13.1)
Цикл повторення з невідомою кількістю повторень передбачає пе­ревірку деякої умови, яр; наприклад, в алгоритмі забивання цвяха в дошку (мал. 13.2).

Мал. 13.2
Припинення виконання команд циклу відбудеться у випадку, коли висловлювання «Цвях не забито» є істинним: цвях можна забивати як з першого чи другого разу, таї: і через скінченну кількість повторень, аж поки цвях не буде забитий.
Як створити циклічний алгоритм з визначеною кількістю повторень у середовищі Скретч?
Для створення циклічних алгоритмів з визначеною кількістю пов­торень у середовищі Скретч використовують команду Повторити К (мал. 13.4,а), де параметр Л* вказує на кількість повторень у тілі циклу (мал. 13.4,6).
Вправа 1. Заповнення посудини рідиною.
Завдання. Склади алгоритм заповнення посудини рідиною за ма­люнками 13.10, 13.11.
1.       Завантаж шаблони схем графічного подання алгоритму, збережені у файлі Рідина.сіосх, що міститься в папці Алгоритми і виконавці.
2.       Встанови, який шаблон відповідає умові завдання: на малюнку 13.10 — кількість повторень відома — 3 рази, а на малюнку 13.11 — кількість повто­рень не відома. Повторення завершиться в тому разі, коли посудина буде заповнена.
3.       Обери зі списку команди й умову та заповни шаблони:
набрати 1 л рідини, вилити рідину в посудину, кількість повторень дорів­нює 3, посудина повна.
4.       Покажи результати вчителеві.
Вправа 2. Жабка.
Завдання. Зміни проект, у якому виконавець Жабка полює за кома­хою, так, щоб замість 16 команд використати тільки 5, і при цьому дії
Жабки не змінилися.
1.       Завантаж середовище Скретч.
2.       Обери вказівку Файл/Відкрити.
3.       У папці Навчальні проекти обери проект Жабка та натисни кнопку Гаразд.
4.       Запусти проект на виконання, спостерігай, які події відбуваються на сцені.
5.       Визнач, які команди, використані для складання програми, повторюються, та скільки разів. Для зміни програми використай блок Повторити з гру­пи Керування. Зміни параметр у команді Повторити відповідно до своїх підрахунків.
6.       Перемісти команди, що мають повторюватися, у блок Повторити.
7.       Видали зайві команди. Для цього обери потрібну вказівку в контекстному




Мал. 13.10
Мал. 13.11
меню
допомога
дублювати
Вправа 3. Мелодія.
Завдання. Створи проект, у якому виконавець Музикант викону­ватиме фрагмент мелодії, поки виконання програми не буде зупинено.
1.       Завантаж середовище Скретч.
2.       Відкрий проект Фрагмент мелодії в папці Навчальні проекти.
3.       Добери команду із групи Керувати та доповни нею програму так, щоб ко­манди із групи Звуки, які вже використані у проекті, повторювалась, поки не буде натиснута кнопка Зупинити.
4.       Перевір, чи під’єднані до комп’ютера навушники або колонки.
5.       Запусти на виконання проект. Для цього у вкладці Скрипти двічі натисни на довільній команді складеної тобою програми. Прослухай мелодію, яку виконує виконавець, і згодом зупини виконання програми.
6.       Збережи проект із назвою Мелодія. Заверши роботу із середовищем.
Г % • •?>
1.       Які ситуації у твоєму повсякденному житті можна описати за допомогою алгоритмічної структури повторення? Наведи приклади. Чи заздалегідь відома кількість повторень, які необхідно виконати?
2.       Які команди в середовищі Скретч використовують при створенні циклічних алгоритмів?
3.       Як у середовищі Скретч реалізувати повторення команд визначену кіль­кість разів?
4.       Структуру повторення якого виду можна створити за допомогою команди Завжди?
5.       Як зупинити виконання команди Завжди?
6.       Чим відрізняється команда Завжди від команди Повторити К?
   Працюємо в парах
Обговоріть, що буде результатом виконання програми, зображеної на малюнку 13.12.
У графічному редакторі відкрий файл Алгоритми і виконав- ці/Повторення шаблони.jpg
Обери один із шаблонів структури повторення та видали шаблон, що не буде використовуватись
У фігуру <                      запиши висловлювання, істинність якого за­
безпечить завершення створення потрібного зображення
У фігури
запиши відповідні команди руху, повороту
та копіювання
Збережи файл з іменем Алгоритм квітка.jpg у своїй струк­турі папок
1
Завдання 3. Манеж
Створи проект Манеж, у якому кінь рухатиметься по колу,
поки програму не буде зупинено
1
У середовищі Скретч створи новий проект. Збережи його з іменем Прізвище Манеж, вказавши своє прізвище
Зміни образ виконавця алгоритму Рудий кіт на Кінь, імпор­тувавши його із папки Тварини
Зміни вигляд сцени на Ігрове поле {playing-field) із папки Спорт (Sport)________________________________________________
Завдання
Бали
5
Додай до програми команди, які повторюватимуть обрані згідно умови завдання
2
6
Запусти складену програму на виконання. Збережи проект і заверши роботу із середовищем
1
Завдання 4. Веселка
Створи проект, за яким для об'єкта Ноутбук буде послідовно з інтервалом 1 с змінюватись колір екрана так, як змінюються кольори веселки
1
У середовищі Скретч створи новий проект. Збережи його з іменем Прізвище Веселка, вказавши своє прізвище
1

Із папки Предмети (Things) імпортуй новий образ виконав­ця — Ноутбук (laptop)

2

1



3
Скопіюй образ ще 7 разів, для кожного з образів зміни ви­гляд так, щоб екран був потрібного кольору. Скористайся при цьому вбудованим графічним редактором середовища Скретч
3
4
Сплануй, які команди потрібні для того, щоб отримати на сцені результат, що відповідає умові задачі. Обери та пере­місти потрібні команди в область побудови програми
4
5
Запусти програму на виконання. Перевір, чи відповідають події на сцені умові завдання. Збережи проект і заверши роботу із середовищем
1
Обери, які із запропонованих дій мають міститись в тілі


Комментариев нет:

Отправить комментарий