Вітаю Вас Гість!
П'ятниця, 29.03.2024, 07:35
Головна | Реєстрація | Вхід | RSS

Категорії розділу

Новини сайту [185]
Тут будуть розміщуватися короткі новини з життя нашого сайту
Програмне забезпечення [16]
Інформація про програмне забезпечення яке можна використати на уроках інформатики
Конспект [44]
Цікаві та необхідні матеріали для вчителів інформатики
План-конспект уроків [8]
Плани-конспектів уроків інформатики, та все що використовується під час уроку
Наболіло [1]
Проблеми, вирішення, спори та інше.... Одним словом НАБОЛІЛЕ!

Календар

«  Березень 2009  »
ПнВтСрЧтПтСбНд
      1
2345678
9101112131415
16171819202122
23242526272829
3031

Статистика


Онлайн всього: 1
Гостей: 1
Користувачів: 0

Форма входу

Наша кнопка

Не забудьте розмістити нашу кнопку на Вашому сайті!
Сайт для підтримки вчителів інформатики


Друзі сайту

Сайт Старосалтівської гімназії Kачественный сервер шаринга, Большой выбор пакетов, Предложение для диллеров, Доступные цены http://shara.tv

Пошук

Користувальницький пошук

Наше опитування

Євроінтеграція?
Всього відповіли: 194

Архів записів

Банк ONLINE

Головна » 2009 » Березень » 2 » Поняття алгоритму
14:14
Поняття алгоритму
Кожна людина щодня зустрічається з безліччю задач від найпростіших і добре знайомих до дуже складних. Для багатьох задач існують визначені правила (інструкції, команди), що пояснюють виконавцю, як розв'язувати дану проблему. Ці правила людина може вивчити або сформулювати сама в процесі розв'язування задачі. Чим точніше описані правила, тим швидше людина опанує ними і буде ефективніше їх застосовувати.
У житті ми постійно складаємо опис деякої послідовності дій для досягнення бажаного результату, тому поняття алгоритму не є для нас чимось новим і незвичайним. Так, ранком мама перед твоїм виходом до школи дає вказівку: «Коли прийдеш зі школи, відразу пообідай і вимий посуд. Після цього підмети підлогу, сходи в магазин і можеш трохи погуляти. Гуляти дозволяю не більше години, а потім відразу за уроки».
Ця інструкція складається з послідовності окремих вказівок, що і ви¬значають твою поведінку після повернення зі школи. Це і є алгоритм.
Кожен із нас використовує сотні різних алгоритмів. Спробуйте згадати деякі з них (алгоритми виконання арифметичних дій під час розв 'язування задач; прибирання квартири; миття посуду; приготування їжі тощо).
Отже, давайте спробуємо сформулювати, що ж таке алгоритм.
Алгоритмом називається зрозуміле і точне розпорядження виконавцю про виконання послідовності дій, спрямованих на досягнення зазначеної мети чи на вирішення поставленої задачі.
В цьому визначенні використовується поняття «виконавець». Що це означає? Під виконавцем алгоритму ми розуміємо будь-яку істоту (живу чи неживу), яка спроможна виконати алгоритм. Все залежить від того, якої мети ми намагаємося досягнути. Наприклад: риття ями (виконавці — людина або екскаватор), покупка деяких товарів (один з членів родини), розв'язування математичної задачі тощо.
Поняття алгоритму в інформатиці є фундаментальним, тобто таким, яке не визначається через інші ще більш прості поняття (для порівняння: у фізиці — поняття простору і часу, в математиці — точка і т.д.). Будь-який виконавець (і комп'ютер зокрема) може виконувати тільки обмежений набір операцій (наприклад, екскаватор копає яму, вчитель навчає, комп'ютер виконує арифметичні дії тощо).
Тому алгоритми повинні мати такі властивості:
1.    Зрозумілість. Щоб виконавець міг досягти поставленої перед ним мети, використовуючи даний алгоритм, виконавцю необхідно уміти виконувати кожну вказівку цього алгоритму, тобто розуміти кожну з команд, що входять до алгоритму.
Наприклад: мама доручила купити в магазині продукти. Виконав¬цем цього алгоритму може бути хтось із родини: батько, син, бабуся, донька. Ясно, що для тата достатньо сказати, які купити продукти, а далі деталізувати алгоритм не потрібно. Сину-підлітку необхідно детальніше пояснити в яких магазинах можна придбати потрібний товар, що можна купити замість відсутнього товару і таке інше. Маленькій доньці алгоритм необхідно деталізувати ще більше: де взяти сумку, щоб принести товар, яку решту грошей необхідно принести з магазину, як дійти до магазину і як там себе поводити. Подібних прикладів можна придумати безліч і запропонувати дітям самостійно підібрати ситуацію, в якій в залежності від виконавця алгоритм буде набувати все більшої деталізації. Висновок з цього діти можуть зробити самостійно: зрозумілість — це властивість алгоритму, що полягає в тім, що кожен алгоритм повинен бути написаний у командах, зрозумілих даному виконавцю.
2.    Визначеність (однозначність). Зрозумілий алгоритм не повинен містити вказівок, зміст яких може сприйматися неоднозначно. Наприклад, «почисти картоплю», «посоли за смаком», «прибери в квартирі» тощо є неоднозначними, тому що в різних випадках можуть привести до різних результатів. Окрім того, в алгоритмах неприпустимі такі ситуації, коли після виконання чергового розпорядження алгоритму виконавцю не ясно, що потрібно робити потім. Наприклад, вас послали за якимось товаром у магазин, та ще й попередили: «без хліба (цукру тощо) не повертайся». А що робити, коли цей товар відсутній?
Визначеність — це властивість алгоритму, яка полягає в тому, що алгоритм має бути однозначно витлумачений і на кожному кроці вико¬навець повинен знати, що йому робити далі.
3.    Дискретність. Як було згадано вище, алгоритм задає певну послі¬ довність дій, які необхідно виконати для розв'язання задачі. При цьому, для виконання цих дій їх розбивають у визначеній послідовності на прості кроки. Виконати дії наступного розпорядження можна лише виконавши дії попереднього. Ця розбивка алгоритму на окремі елементарні дії (коман¬ди), що легко виконуються даним виконавцем, і називається дискретністю.
4.    Масовість. Дуже важливо, щоб складений алгоритм забезпечував розв'язання не однієї окремої задачі, а виконував розв'язання широкого класу задач даного типу. Наприклад, алгоритм покупки товару в магазині буде завжди однаковий, незалежно від товару, що купується. Або алгоритм прання не залежить від білизни, що переться, і таке інше. Отож, під масовістю алгоритму розуміють можливість застосування цього алгоритмудля вирішення великої кількості однотипних завдань.
5.    Результативність. Виконання будь-якого алгоритму повинно завершуватися одержанням кінцевих результатів. Тобто ситуації, коли можуть виникнути так звані «зациклення», повинні бути виключені ще
при написанні алгоритму. Наприклад, розглянемо таку ситуацію: роботу дано вказівку залишити кімнату (замкнутий простір), не виконуючи руйнівних дій. У цьому випадку, якщо йому не дати команди «відкрити двері» (які, можливо, закриті), то спроби робота залишити кімнату будуть
безуспішними. У процесі та по закінченні викладання матеріалу учням пропонується навести приклади інструкцій, що не відповідають визначенню алгоритму чи не мають властивостей алгоритму. Яким чином можна подати алгоритм виконавцю.

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

Першій спосіб — це словесний опис алгоритму. Сьогодні на уроці ми вже розібрали кілька алгоритмів і всі вони подавалися виконавцю за допомогою словесного опису.
Другий спосіб — це подача алгоритму у вигляді таблиць, формул, схем, малюнків тощо. Наприклад, коли вас навчають правил поведінки на дорозі, то найкраще така інформація сприймається тоді, коли вона подана у вигляді схематичних малюнків. Дивлячись на них, людина відпрацьовує ту лінію поведінки, яка їй пропонується. Аналогічно можна навести приклади алгоритмів, записаних у вигляді умовних позначок на упаковці товару щодо його використання (наприклад, заварювання чаю, кави тощо). В математиці за допомогою формул можна розв'язати задачу, навіть не використовуючи слів.
Третій спосіб — запис алгоритмів за допомогою блок-схеми. Цей ме¬тод був запропонований в інформатиці для наочності представлення алго¬ритму за допомогою набору спеціальних блоків.
Четвертий спосіб — навчальні алгоритмічні мови (псевдокоди). Ці мови мають чітко визначений синтаксис і максимально наближені до машинної мови (мови програмування). Але створені вони з навчальною метою, тому мають зрозумілий для людей вигляд. Таких псевдокодів зараз існує велика кількість, починаючи з графічних середовищ «Алгоритміка», «Роботландія», «Лого-світи», «Черепашка» тощо і закінчуючи текстовими «національними» реалізаціями алгоритмічних мов, подібних Паскалю. Ці псевдокоди мають програмну реалізацію і дуже широко застосовуються на етапі навчання основам програмування.
П'ятий спосіб максимально наближений до комп'ютера — це мови програмування. На практиці найчастіше виконавцем створеного людиною алгоритму є комп'ютер і тому алгоритм має бути написаний мовою, зрозумілою для комп'ютера, тобто мовою програмування.


Категорія: Конспект | Переглядів: 4524 | Додав: Администратор | Рейтинг: 4.8/5
Всього коментарів: 3
15.03.2010
3. ура [Материал]
ok

21.09.2009
2. Людмила Николаевна [Материал]
Благодарю.
Лень было самой все это набирать
Ответ: И вам спасибо

14.06.2009
1. Antony LA (NrG) [Материал]
спасиб good
Ответ: будь ласк wink

Додавати коментарі можуть лише зареєстровані користувачі.
[ Реєстрація | Вхід ]