Jazyk/Language -

Algoritmus

Co je to algoritmus ?

„Algoritmus je přesný návod či postup, kterým lze vyřešit daný typ úlohy.“


Myslíte si, že jste se ještě s žádným algoritmem v životě nesetkali ? Tak to jste na omylu. Život nás přímo algoritmy obklopuje, no tak třeba: Kdy jste naposledy drželi v ruce recept na nějaké dobré jídlo ? Nebo spočítali například lineární či kvadratickou rovnici v matematice ? Ano, toto vše jsou algoritmy, ale tento článek není o žádných receptech, nebo rovnicích. Existuje i počítačový algoritmus a pokud se bavíme o algoritmech v počítači, tak pomocí algoritmů byli navrženy programovací jazyky, které jsou na algoritmech přímo postavené. Každý příkaz v jakýmkoli programovacím jazyku má jasně definovaný postup a programátor ho může vyvolat.

Zápis algoritmů

  • Slovním popisem - slovní popis v přirozeném jazyce (např. Pukud poteče teplá voda, tak se dneska umyji. Jinak se umyji zítra).
  • Vývojovým diagramem - grafické znázornění algoritmu užitím značek a zkratek dle normy.
  • Strukturogramy - používá obdobné symboly, ale přesnější a využívá se tedy ve strukturovaném programování.
  • Datově orientované diagramy (HIPO) - je grafickým vyjádřením funkčně členění problému, struktury dat a postupu řešení.
  • Rozhodovací tabulky - používají se při velmi složitých větveních.

Vlastnosti algoritmu

  • Obecný - Algoritmy, se kterými se setkáváme v běžném životě (rovnice, recepty, postup sestavení počítače apod.)
  • Konečnost (Rezultativnost) - Algoritmus, který po nějakém počtu postupů skončí a vydá výsledek.
  • Elemantární (Srozumitelný) - Algoritmus je vytvořen tak, aby se v něm každý vyznal. Například algoritmus pro pracovníka, který seřizuje stroj bude vypadat jinak než algoritmus pro programovací jazyky.
  • Opakovaný - stejný postup se stejnými vstupními informacemi, který se pořád opakují.
  • Deterministický - Algoritmus, ve kterém jsou přesně uvedené postupy a jakou dobu a jaké postupy se mají provádět. Například program v počítači má za úkol 10 sekund opakovat nějaký postup a po stanoveném čase přejde na další.

Ukázka algoritmů

V první ukázce je algoritmus zapsán grafickou metodou, též nazýván vývojový diagram. Vývojový diagram nelze použít, když chceme vytvořit mnohem složitější algoritmus než je tento :

Druhý algoritmus je zapsán v programovacím jazyku (konkrétně C#), je zde tedy omezena sada slov, které můžeme použít. Více nám už poví ukázka, která je dostupná ke stažení zde.

V poslední ukázce je algoritmus zapsán pomocí našeho přirozeného jazyka, díky němu mohou být zapsány příklady v matematice, recepty, návody a jiné postupy :

Prvky algoritmů

  • Cyklus - Jistě jste si všimli v první ukázce zapsanou grafickou metodou toho, že pokud uživatel zadá chybnou hodnotu, tak má šanci napsat danou hodnotu tolikrát, jak mu dovoluje program. Avšak se zde může objevit, že uživatel bude moci hodnoty psát do nekonečna, právě tomuto jevu říkáme cyklus.
  • Větvený - Ano, i v první ukázce se objevil tento prvek algoritmu, je to algoritmus u kterého se můžeme rozhodnout, jaký příkaz se bude provádět a jestli se vůbec provádět bude a program neskončí. Tento prvek algoritmu se nazývá větvený.
  • Sekvence(série) - Tento prvek algoritmu je poměrně jednoduché vysvětlit, je to algoritmus, kde se příkazy provádějí přesně jeden za druhým a přesně daném pořadí. Tento prvek algoritmu nese název sekvenční(sériový).

Zpět

Získejte registraci domén s tld .online, .space, .store, .tech zdarma!
Stačí si k jedné z těchto domén vybrat hosting Plus nebo Mega a registraci domény od nás dostanete za 0 Kč!
Objednat