Myšlenky o programech průměrného uživatele jsou velmi omezené a vycházejí ze zkušeností se spouštěním a prací v aplikacích. Víme, že existují programátoři, kteří programy píší, a naším obchodem je využívat výsledky jejich práce. Lidé, kteří maturitu absolvovali již dávno, si vzpomínají na algoritmy v kontextu teorie algebry, což si matně představuje, že tyto znalosti rozhodně nejsou užitečné. A pokud musíte čelit průniku těchto konceptů, většina z nás se ztratí, aniž by našla spojení mezi algoritmy a programy, a tedy bez pochopení úkolu. Někdy se tyto pojmy kombinují, protože věří, že „algoritmus“ je profesionálnější a přesnější označení „programu“. Chcete-li vyplnit mezery v pohledech, podívejme se, co je stále za terminologií.
Definice
Algoritmus - instrukce, včetně určitého jasného postupu pro akce prováděné k dokončení úkolu. Počet akcí je vždy omezený..
Program (nejprve počítač) - záznam sekvence instrukcí provedených počítačem.
Porovnání
Jaký je rozdíl mezi algoritmem a programem, je již z terminologie zřejmé. Zdá se, že v obou případech vidíme uspořádané akce vedoucí ke konečnému výsledku. Jak je zřejmé z definic, program se může skládat z několika algoritmů, ale zde není sledována hierarchie „obecně - konkrétní“. Algoritmus je obecně jakákoli instrukce, která jasně uvádí akce. Například sestavit skříňku. Samozřejmě to nebude program. Algoritmus může existovat v jakékoli formě: může být zapamatován, zapsán do poznámkového bloku, načrtnut ve formě diagramu, diktován, protože je založen na logické komponentě, nikoli formální. Program je formální koncept. Je to záznam souboru algoritmů, navíc záznam v jednom z programovacích jazyků, kterému počítač rozumí. Může to být nejen náš známý počítač, ale také řídící jednotka jakéhokoli zařízení. Algoritmus tak může být definován jako metoda nebo schéma implementace myšlenky, program jako jeho implementace specifickými prostředky.
Dalším rozdílem mezi programem a algoritmem je zpracování specifických dat během provádění. Pokud je algoritmus pouze popisem akcí potřebných k dosažení cíle, program obsahuje také popis dat. Algoritmus může být masivní, to znamená, že má řešit nejen jeden problém, ale třídu úkolů. Současně s jejími vlastnostmi je spojena také diskrétnost a jistota. Algoritmus předpokládá provádění elementárních akcí na elementárních objektech, avšak pro různé výkonné umělce bude elementarita odlišná.
Koncept algoritmu je mnohem širší než program: základní koncept matematiky. Počítačový program je předmětem práva duševního vlastnictví, ale algoritmus se na něj nevztahuje.
Závěry
- Algoritmus - instrukce, program - záznam sekvence instrukcí.
- Algoritmus může být reprezentován v jakékoli formě, program v programovacím jazyce.
- Program obsahuje popis dat a akcí, akce pouze pro algoritmy.
- Algoritmus může být navržen tak, aby vyřešil skupinu problémů.
- Algoritmus je základní pojem matematiky.
- Program podléhá autorským právům.