1. Определение за алгоритъм
Алгоритъм е крайна последователност от ясно описани действия, чрез които се решава определена задача. Всяко действие се изпълнява точно в зададения ред и води до търсения резултат. Алгоритми се използват не само в програмирането, а и в ежедневието.
- Ежедневен пример: рецепта за готвене или инструкция за теглене на пари от банкомат.
- Компютърен пример: намиране на по-голямото от две числа или сортиране на списък с имена.
- Алгоритъмът е описание на решението и не зависи от конкретен програмен език.
- Програмата е запис на алгоритъма на език, който компютърът може да изпълни.
2. Свойства на алгоритъма
За да бъде една последователност от действия алгоритъм, тя трябва да притежава определени свойства. Те гарантират, че алгоритъмът може да се изпълни еднозначно и да даде резултат.
- Дискретност – решението се разделя на отделни елементарни стъпки, които се изпълняват една след друга.
- Определеност – всяка стъпка е описана еднозначно и не позволява различно тълкуване.
- Крайност – алгоритъмът завършва след краен брой стъпки.
- Резултатност – след завършване се получава резултат или ясен отговор, че задачата няма решение.
- Масовост – алгоритъмът решава цял клас от задачи с различни входни данни, а не само един конкретен случай.
3. Елементи и изпълнител на алгоритъма
Всеки алгоритъм получава входни данни, обработва ги и връща изходни данни. Действията се изпълняват от изпълнител – човек, компютър или друго устройство, което разбира командите. Командите трябва да са от набора, който изпълнителят може да извършва.
- Входни данни – стойностите, с които започва решаването (например две числа \(a\) и \(b\)).
- Обработка – последователността от действия върху данните (например събиране).
- Изходни данни – получения резултат (например сборът \(s\)).
- Изпълнител – този, който изпълнява стъпките; компютърът ги изпълнява точно и без да ги интерпретира.
- Пример – сбор на две числа: 1) въведи \(a\) и \(b\); 2) изчисли \(s = a + b\); 3) изведи \(s\).
Изготвил: Цветелин Борисов