Учебное пособие: Викладання теми "Алгоритми"

3) обмочи його у кетчупі;

4) намаж шматочки батону фаршем;

5) обмочи їх у збитих яйцях;

6) обжар шматки з двох сторін;

7) зверху намаж грінки часниковим майонезом".

Що вам нагадує ця послідовність дій?

Це є чіткий алгоритм приготування грінок.

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

Кожен із нас використовує сотні різних алгоритмів. Спробуйте згадати деякі з них (алгоритми виконання арифметичних дій під час розв'язування задач; прибирання квартири; миття посуду; приготування їжі тощо).

Існують різні задачі, з якими людина стикається щодня. Для багатьох задач існують визначені певні вказівки чи команди, які пояснюють, як потрібно виконувати розв’язок даної задачі. Людина може вивчити ці правила, а може й сама скласти свої. Чим точніше сформульовані вказівки, тим точніше і правильніше можна буде виконати певне завдання. Тобто вміти складати алгоритми − важливе завдання не тільки під час розв’язування математичних задач, але й у повсякденному побуті. Ви зі мною згодні?

учень алгоритм графічна схема

Сьогодні ми і з’ясуємо, що таке алгоритм, які у нього є властивості, які є способи подання алгоритмів, хто є виконавцями алгоритмів. Також ви спробуєте складати власні алгоритми розв’язання певних завдань.

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

1) Поняття алгоритму.

Отже, давайте спробуємо сформулювати, що ж таке алгоритм.

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

В цьому визначенні використовується поняття "виконавець". Що це означає? Під виконавцем алгоритму ми розуміємо будь-яку істоту (живу чи неживу), яка спроможна виконати алгоритм. Все залежить від того, якої мети ми намагаємося досягнути. Наприклад: риття ями (виконавці - людина або екскаватор), покупка деяких товарів (один з членів родини), розв'язування математичної задачі тощо.

Поняття алгоритму в інформатиці є фундаментальним, тобто таким, яке не визначається через інші ще більш прості поняття (для порівняння: у фізиці - поняття простору і часу, в математиці - точка і т.д.).

2) Властивості алгоритму.

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

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

Наприклад: мама доручила купити в магазині продукти. Виконавцем цього алгоритму може бути хтось із родини: батько, син, бабуся, донька. Ясно, що для тата достатньо сказати, які купити продукти, а далі деталізувати алгоритм не потрібно. Сину-підлітку необхідно детальніше пояснити в яких магазинах можна придбати потрібний товар, що можна купити замість відсутнього товару і таке інше. Маленькій доньці необхідно алгоритм деталізувати ще більше: де взяти сумку, щоб принести товар, яку решту грошей необхідно принести з магазину, як дійти до магазину і як там себе слід поводити.

2. Визначеність (однозначність). Зрозумілий алгоритм не повинен містити вказівок, зміст яких може сприйматися неоднозначно. Наприклад, "почисти картоплю", "посоли за смаком", "прибери в кімнаті" тощо є неоднозначними, тому що в різних випадках можуть призвести до різних результатів. Окрім того, в алгоритмах неприпустимі такі ситуації, коли після виконання чергового розпорядження алгоритму виконавцю не ясно, що потрібно робити потім. Наприклад, вас послали за якимось товаром у магазин, та ще й попередили: "без хліба (цукру тощо) не повертайся". А що робити, коли цей товар відсутній?

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

3. Дискретність. Як було згадано вище, алгоритм задає певну послідовність дій, які необхідно виконати для розв'язання задачі. При цьому, для виконання цих дій їх розбивають у визначеній послідовності кроки. Виконати дії наступного розпорядження можна лише виконавши дії попереднього. Ця розбивка алгоритму на окремі елементарні дії (команди), що легко виконуються даним виконавцем, і називається дискретністю.

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

5. Результативність. Виконання будь-якого алгоритму повинно завершуватися одержанням кінцевих результатів. Тобто ситуації, коли можуть виникнути так звані "зациклення", повинні бути виключені ще при написанні алгоритму. Наприклад, розглянемо таку ситуацію: роботу дано вказівку залишити кімнату (замкнутий простір), не виконуючи руйнівних дій. У цьому випадку, якщо йому не дати команди "відкрити двері" (які, можливо, закриті), то спроби залишити кімнату будуть безуспішними.

4) Способи подання алгоритмів.

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

К-во Просмотров: 313
Бесплатно скачать Учебное пособие: Викладання теми "Алгоритми"