четвер, 4 квітня 2019 р.

Урок 29. Алгоритми з повтореннями

У природі можна спостерігати процеси, які багаторазово повторюються. Так, наприклад, кожного дня Сонце сходить над горизонтом і заходить за горизонт. Кожного місяця можна бачити на небосхилі одне й те саме змінення фаз Місяця. Кожного року Сонце проходить через одні й ті самі сузір'я - сузір'я Зодіаку.
Процеси, які повторюються, називаються циклічними.
Кожний з вас бере участь у циклічних процесах. Так, у школі протягом одного семестру щотижня в одні й ті самі  дні  відбуваються  одні  й ті  самі уроки згідно з розкладом.  Кожного разу, коли вам потрібно закип'ятити воду в чайнику, ви виконуєте одну й ту саму послідовність дій. Найчастіше ви йдете або ідете з дому до спортивної секції або музичної школи одним і тим самим маршрутом. 
А щоб вивчити строфу вірша напам'ять, спочатку її читають, а тоді пробують розповісти по пам'яті. Якщо це не вдається, то продовжують читати знову — тобто повторюють цю дію кілька разів.
Наведені приклади можна подати циклічними алгоритмами, оскільки в кожному з них повторюються деякі дії. Кількість повторів може бути різною, але скінченною: діжку можна заповнити за 8 повторень, а кількість повторів під час вивчення вірша залежить від здібностей до запам'ятовування конкретної людини.
Для опису циклічних алгоритмів використовують алгоритмічну структуру повторення.
В алгоритмах розв'язування багатьох задач потрібно виконати одну або кілька команд більше ніж один раз.  Для цього такі алгоритми мають містити команди, які визначатимуть, які команди повинні виконатися неодноразово і скільки саме разів.
 Повторення — базова алгоритмічна структура, призначена для організації багаторазового виконання набору команд.
Вираз «багаторазове виконання» означає, що команди будуть виконуватися скінченну кількість разів.
Кількість повторень у циклічних алгоритмах може бути або заздалегідь відомою, або ні, тому розрізняють:
·        повторення з визначеною кількістю повторень;
·        повторення з невідомою кількістю повторень.
Якщо кількість повторень заздалегідь не відома, то для припинення циклу задається деяка умова, яка і забезпечує скінченність виконання команд, що повторюються.
Цикл повторення з невідомою кількістю повторень передбачає перевірку деякої умови, як наприклад, в алгоритмі забивання цвяха в дошку.

У разі, коли в алгоритмі кількість повторів заздалегідь не відома, у середовищі Скретч використовують команду Завжди.
Щоб зупинити виконання команд, розміщених у тілі такого циклу, користувачу слід натиснути кнопку.




У середовищі Скретч складений алгоритм можна подати у вигляді програми.

№1. Алгоритми з повторенням

№2. Структура повторення

№3. Алгоритм з повторенням

№4 Вікторина

№5 Кросворд