Алгоритми

Алгоритми

1. Що е алгоритъм.
В ежедневието си човек извършва дейности, които се изпълняват по предварително заучени правила и определена последователност – напр. събирането на числа, избирането на телефонен номер, карането на кола и др. Казваме, че тези дейности са алгоритмизирани.

Алгоритъм система от краен брой елементарни действия със зададен ред на изпълнението им, които водят до решаване на определен проблем.

Елементарно действие (стъпка) е действие, което не се нуждае от допълнителни указания, за да бъде извършено.
Терминът „алгоритъм” произлиза от името на арабския математик Ал-Хорезми, който в свой научен трактат описва алгоритъм за представяне на числа в десетична бройна система.

Пример:
Баща и двамата му трябвало да преминат пълноводна река. Намерили малка лодка, която може да превозва не повече от 120 кг товар. Как да преминат реката, ако бащата тежи 100 кг, а синовете му съответно 50 кг и 60 кг?
Алгоритъм:
1. Двамата синове преминават на отсрещния бряг;
2. Единият син връща лодката;
3. Бащата преминава реката;
4. Вторият син връща лодката;
5. Двамата синове преминават реката;
6. Край на алгоритъма.

2. Свойства на алгоритмите.
Някои от най-важните свойства на алгоритмите са:
а) крайност – изпълнението на алгоритъма трябва да завършва след краен брой стъпки;
б) определеност – при всяко изпълнение на алгоритъма с едни и същи данни се получават едни и същи резултати;
в) яснота – изпълнителят може да извърши всяка текуща стъпка и да определи езнозначно коя е следващата за изпълнение стъпка;
г) масовост – алгоритъмът може да се прилага за решаване на коя да е задача от клас еднотипни задачи;
3. Видове алгоритми.
Алгоритмите са три вида: последователни (линейни), разклонени и циклични.

Последователни (линейни) алгоритми – алгоритми, съставени от елементарни действия, които се изпълняват едно след друго последователно по реда на записването им.

Разклонени алгоритми – алгоритми, съдържащи действия, които определят кои са следващите за изпълнение действия, в зависимост от изпълнението или неизпълнението на дадено условие.

Циклични алгоритми - алгоритми, които съдържат група от елементарни действия, които се изпълняват многократно.

4. Начини за описание на алгоритми.
Алгоритмите могат да бъдат описвани:
- словесно (чрез думи);
- чрез специални знаци, представящи дадени действия;
- чрез блок-схеми (общоприети графични схеми, в които действията се вписват в геометрични фигури, а стрелки определят реда им);
- чрез компютърни програми.