Či chceme alebo nie, či si to uvedomujeme alebo nie, celý náš život pozostáva z algoritmov –
postupov (napr. ranné vstávanie vždy vyzerá rovnako: zazvoní budík, otvorím pravé oko, udriem ho (budík), zatvorím pravé oko, o dvadsať minút sa strhnem, v zhone zhltnem raňajky a bežím na autobus). Tým, že sa ich snažíme zapísať, sledujeme zvyčajne dva ciele:
- vďaka popisu dokážeme vykonávaním algoritmu poveriť iného človeka alebo počítač,
- v ďaka vyjadreniu myšlienok sa nám problém stáva zrozumiteľnejším a sme schopní lepšie mu porozumieť.
Proces, ktorý pri zápise algoritmu vykonávame, sa nazýva algoritmizácia. Na jej začiatku vždy potrebujeme určiť vstupné (napr. rozsah hodnôt, ktoré môžu do algoritmu vstupovať) a výstupné podmienky (vlastnosti výsledku). Zadanie algoritmu potom zapisujeme takto:
{VST: vstupné podmienky}
?
{VÝS: výstupné podmienky}
napr. pre výpočet objemu hranola bude zápis vyzerať nasledovne:
{VST: a, b, c : reálne čísla rôzne od 0}
?
{VÝS: V – reálne číslo predstavujúce objem}
Algoritmy vytvárame na to, aby sme získali správny výsledok. K tejto požiadavke sa viažu nasledovné pojmy:
- algoritmus nazývame čiastočne správny, ak v prípade, že skončí, dáva vždy správne výsledky,
- algoritmus naz ývame konečný, ak skončí v konečnom čase pre ľubovoľné vstupné údaje,
- algoritmus naz ývame správny, ak je čiastočne správny a konečný.