Смекни!
smekni.com

Викладання теми "Алгоритми" (стр. 2 из 2)

початок (або кінець) алгоритму

блок введення та виведення

- командний блок

блок умовного переходу (розгалуження)

Рис.1. Блоки алгоритмів

Рис.2. Лінійна базова структура алгоритму

Існує чотири базових структури алгоритмів: лінійні; розгалужені; циклічні; змішані. Найпростіша в написанні та виконанні перша з цих структур - лінійна До неї відносяться алгоритми, що складаються лише з простих команд, які виконуються безумовно, тобто після першої команди виконується друга, потім третя і тощо.

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

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

Виходячи з цього, речення "Якого кольору твій піджак?" не можна вважати умовою, а речення "Твоє волосся русяве?" - можна.

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

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

Крім того, в циклах з умовою теж можна виділити два різних випадки (рис.4):

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

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

Рис. 4. Відповідно цикл з передумовою та цикл з післяумовою

Найчастіше ж у житті ми використовуємо змішані алгоритми. Так, дійсно, зранку ми контролюємо свій стан здоров'я, погоду, розклад уроків (коли збираємо речі), свій одяг і таке інше. Коли ми снідаємо, ми повторюємо одну й ту саму послідовність дій (зачерпнути ложкою їжу, піднести до рота, забрати в рот, прожувати, проковтнути і т.д.), коли ми миємо посуд, ми теж повторюємо одну й ту саму послідовність дій. Навіть коли ми йдемо, ми повторюємо визначені дії.

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

ІV. Первинне осмислення та закріплення вивченого навчального матеріалу.

Спробуй за малюнками скласти алгоритми дій (рис.5,6).

Рис.5. Режим дня

Рис.6. Ханойська вежа

V. Підсумки уроку та домашнє завдання.

1. Запишіть алгоритми розв’язання таких завдань: приготувати чай; зателефонувати на певний номер мобільного телефону; прибрати в кімнаті.

Рис.7. Канал, яким проходять пароплави

2. На малюнку зображено вузький канал, яким можуть проходити пароплави тільки в одному напрямі (рис.7). Але дві трійки пароплавів в даний момент пливуть назустріч один одному. Складіть алгоритм, що дозволить їм якнайшвидше розійтися. Пароплави можуть рухатися не тільки вперед, а й назад, та користуватися спеціальним розгалуженням, у якому може перебувати одночасно тільки один пароплав.

Використана література

1. Володіна І.Л., Володін В.В., Дорошенко Ю.О. Основи інформатики.7 клас: експериментальний посібник. − Харків: Гімназія, 2007. − 384 с.

2. Інформатика. Програми для загальноосвітніх навчальних закладів. - Запоріжжя: Прем'єр, 2003. - 304 с.

3. Караванова Т.П.: Основи алгоритмізації та програмування: 750 задач з рек. та прикл.: Посіб. - К.: Форум, 2002. - 287 с.: іл. - Бібліогр.: с.281.

4. Лисенко Т.І.: Основи програмування на мові С++ в середовищі Borland C++ версії 3.1: Кременчук: Кременч. педуч. ім.А.С. Макаренка, 2001. - 50 с.

5. Скляр І.В.: Я готуюсь до уроку інформатики. Алгоритмізація та програмування. Конспекти уроків. - К.: Ред. загальнопед. газ., 2004. - 128 с. - (Бібліотека "Шкільний світ").

6. Федько В.В., Плоткін В.І.: Основи алгоритмізації та програмування.11 клас. - Харків: Веста: Видавництво "Ранок", 2003. - 192 с. - (Інформатика в школі).