Алгоритми з повторенням і розгалуженням

Мета: познайомитися з командами повторення і розгалуження.

Структура уроку
Організаційн частина.
Актуалізація опорних знань.
Вивчення нового матеріалу.
Закріплення вивченого матеріалу.
Підсумок уроку.
Домашнє завдання.

Хід уроку

1. Організаційний момент
Вітання з класом. Перевірка присутності і готовності учнів до уроку. Перевірка виконання домашнього завдання.

2. Актуалізація опорних знань
Подайте приклади речень, які є вказівками.
Подайте приклади речень, які не є вказівками.
Що таке алгоритм? Подайте приклади з лінійною структурою.
Що таке виконавець?
Що таке система вказівок виконавця?
Що таке середовище виконання?
Назвіть властивості алгоритму. Поясніть кожну з них.
Подайте приклад послідовності вказівок, яка не є виконуваною.
Подайте приклад послідовності вказівок, яка не є результативною.
Поясніть відмінність між словесною та графічною формами подання алгоритму.
Назвіть елементи блок-схеми алгоритму та поясніть їх призначення.
Який алгоритм (фрагмент алгоритму) називають лінійним?
Подайте приклади з навколишнього життя:
виконавців;
алгоритмів;
систем вказівок.

3. Вивчення нового матеріалу

Умовний оператор (оператор галуження) — це вказівка, що передбачає виконання однієї або іншої вказівки залежно від справдження певного висловлювання (умови).

Всі мови програмування мають такі спеціальні вказівки (оператори) для галуження залежно від справдження певної умови. В категорііКерувати середовища Scratch

є такі умовні оператори:
повний — з двома гілками;
неповний — з однією гілкою;
оператор-пауза.

Повний оператор (розгалуження) має такий вигляд:
якщо умова вказівка1 інакше вказівка2

При справдженні умови буде виконано вказівку1, інакше — вказівку2.

Тут під вказівками розуміємо як окрему вказівку, так і серію (послідовність) вказівок (у Scretch не існує обмежень на кількість вкладень вказівок розгалуження). Тому у блок-схемі повної вказівки розгалуження замість слова «вказівка» вжито слово «серія».

Якщо у точці розгалуження програми має бути більше двох варіантів вибору, додаткові оператори потрібно вкласти (вставити) в середину секції «інакше». Такі додаткові оператори називають вкладеними умовними операторами. Scretch не обмежує кількість вкладених умовних операторів.

На наступному малюнку на вкладці Скрипти праворуч подано приклад таких вкладених умовних операторів. Їх неможна плутати зпослідовним застосуванням умовних операторів (див. приклад ліворуч на тій самій панелі).

Неповна вказівка розгалуження має такий вигляд:
якщо умова вказівка

Під час виконання цієї вказівки при справдженні умови буде виконано вказівку (послідовність вказівок) всередені блока, інакше — здійснено перехід до виконання вказівок, розташованих після вказівки розгалуження.

Умовна пауза встановлює паузу, яка триває доти, доки не почне справджуватися певна умова, після чого буде запущено на виконання наступні (за умовною паузою) вказівки.



Цикл — різновид керівної конструкції мови програмування, призначеної для організації багаторазового виконання послідовності вказівок.

Tіло циклу — послідовність вказівок, призначена для багаторазового виконання.

Ітерація — одноразове виконання тіла циклу.

Умова виходу (завершення) циклу або умова продовження циклу залежно від того, як тлумачити її істинність — як ознаку необхідності завершення чи продовження циклу — висловлювання, що визначає, чи буде виконано наступну ітерацію, чи буде завершено цикл.

Лічильник ітерацій циклу (або просто лічильник циклу) — змінна, величина якої є номером поточної ітерації.

Примітка Нумерацію ітерацій не завжди здійснюють послідовними натуральними числами. Цикл не обов’язково містить лічильник, а лічильників може бути кілька або жодного: умова виходу з циклу може залежати від декількох змінюваних у циклі змінних, а може визначатися зовнішніми умовами. Наприклад, настанням певного часу. В останньому випадку лічильник взагалі зайвий.

Більшість мов програмування надають засоби для дострокового керування циклом. Наприклад:
оператор завершення циклу, тобто виходу з циклу незалежно від істинності умови виходу (у мові С — break);

оператори пропущення ітерації (у мові С — continue).

Цикли, як і умовні оператори, можуть бути вкладеними. У цьому випадку розрізняють зовнішній і внутрішній цикли.

Scretch має такі 4 види циклів:
— безумовний;
— з лічильником;
— з передумовою;
— з післяумовою.

Блок-схема оператора безумовного цикла має такий вигляд:

Тіло такого циклу виконується поки активним є скрипт, частиною якого він є. Зупинити такий цикл можна лише за допомогою заглушок:

Перша зупиняє виконання скрипту, друга — всієї програми.

Цикл з лічильником — цикл, тіло якого виконують певну кількість разів, тобто для всіх послідовних цілих чисел величин лічильника з певного діапазону.

Зазвичай цикл з лічильником використовують, якщо кількість виконуваних повторень (ітерацій) відома заздалегідь хоча б у момент початку виконання циклу. Його блок-схема має такий вигляд.

Цикл з передумовою — цикл, тіло якого виконують при справдженні умови, вказаної перед його початком.

Справдження умови перевіряють кожного разу перед виконанням тіла циклу. Якщо ця умова не справджується при звертанні до циклу (до першої ітерації), то тіло циклу не буде виконано жодного разу.

Цикл з післяумовою — цикл, тіло якого виконують до справдження певної умови.

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


5. Підбиття підсумків уроку
Виставлення оцінок.

6. Домашнє завдання
Повторити матеріал уроку. Доробити завдання, невиконані у класі. Підготуватися до опитування.

Коментарі

Популярні дописи з цього блогу

Азбука Морзе Українською

Python: Урок 4. Логічні вирази

Python: Урок 3. Типи даних в програмуванні. Визначення змінної