Основни елементи на алгоритмите - Преди да разгледаме основните видове алгоритми нека се запознаем с някои от основните понятия при работа с алгоритми.
а)Величини - характеризират се с име и тип. Типът определя множеството от допустими стойности на величината. Стойността на величина в даден момент се нарича текуща стойност.
Величините се делят
на константи и променливи:
- Променлива – Математическата представа за променлива е
различна от понятието променлива при алгоритмите. В компютърните
алгоритми, променливата означава елемент от паметта, чието съдържание може да
се променя.
- Константи –
тяхната стойност не се променя.
b)Изрази – за всеки тип величини са дефинирани различни операции, които се
използват в изрази за изчисление.
В изразите величините участват със своите имена, а операциите се извършват
върху стойностите им.
Основни команди за описване на алгоритми:
Видове алгоритми:
Линейни алгоритми са тези, при които последователността от действия е една и съща за всички входни данни. Всяка стъпка на алгоритъма има само една предходна и 1 следваща.
Нека да разгледаме алгоритъма за събиране на 2 числа a и b.
Стъпка 1: Начало.
Стъпка 2: Въведете и запомнете стойностите на a и b.
Стъпка 3: На променливата S присвояваме сбора на a + b.
S:=a+b
Стъпка 4: Изведете стойността на S като резултат.
Стъпка 5: Край.
Разклонени алгоритми – Много
често се налага да избираме между няколко възможни варианта. Какво решение ще
вземеме обикновенно зависи от някакво условие.
Разклонените алгоритми съдържат команди, които в зависимост от изпълнението или
не на дадено условие определят кои са следващите за изпълнение команди. Подобни
условия се наричат логически.
Съществуват две форми на разклонен алгоритъм:
1. Кратка – Използва се тогава, когато е необходимо да се изпълни действието S само при определено условие Р. Ако условието не е изпълнено, то командата не се изпълнява.
2. Пълна – Ако се изпълни условието Р, се извършва действие S1, а ако не се изпълни действие S2.
Циклични алгоритми –
При тях част от стойностите се повтарят многократно за различни стойности на
променливите. Групата от блокове, които са описани веднъж, но се изпълняват
многократно се наричат ТЯЛО НА ЦИКЪЛА.
При тях задължително има условен блок. А необходимо изискване е да се осигури
край на цикличните повторения (излизане от цикъла).
В тялото на цикъла, трябва да се променя стойността поне на 1 променлива
участваща в условието за край.В противен случай ще се получи безкраен цикъл.
Пример:
Пример за цикъл е задачата за намиране сумата на редица от числа. Сумиране на
голям брой числа може да се използва в магазин, когато искате да проверите
сметката си, или пък класният ръководител определя средният успех на класа.
Циклите биват 3 вида:
1. С предусловие – при тях първо се проверява условието и ако то е изпълнено се изпълняват операциите от тялото на цикъла. Ако не е изпълнено още в началото е възможно тялото на цикъла да не се изпълни нито веднъж.
2. С постусловие – при тях първо се изпълняват операциите от тялото на цикъла и след това се проверява условието за продължаване на цикъла. Ако то е изпълнено се
връща за повторно изпълнение на тялото, ако не е се излиза от цикъла.
3. С параметър – това е цикъл със зададено количество на повторенията.
Във всеки един цикъл има 4 елемента, които се търсят:
Изразяване на алгоритми чрез блок-схеми: