informatika:maturita:16a
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
informatika:maturita:16a [24. 04. 2015, 18.18] – xmrnustik | informatika:maturita:16a [26. 05. 2020, 13.21] (aktuální) – [Eratosthenovo síto] xdostal | ||
---|---|---|---|
Řádek 3: | Řádek 3: | ||
===== Pojmy ===== | ===== Pojmy ===== | ||
- | * **Algoritmus** | + | * **Algoritmus** |
- | * **Program** | + | * **Program** |
- | * **Programovací jazyk** | + | * **Programovací jazyk** |
- | ==== Pravidla programovacích jazyků ==== | + | ===== Pravidla programovacích jazyků ===== |
- | Dělíme na: | + | * **Syntaxe** (forma) – Definuje kombinaci symbolů, které jsou považovány za správně strukturovaný kód. V každém programovacím jazyce bývá syntaxe odlišná. Jejími typickými prvky jsou např. závorky, středníky, mezery a tabulátory. Je-li syntaxe chybná, výsledný |
- | * **Syntaktická** - způsob jakým máme program zapisovat | + | * **Sémantika** (význam) – Zhodnocuje význam syntakticky platných řetězců a provádí jejich výpočty. Popisuje procesy, které počítač provádí při běhu programu. Například: |
- | * **Sémantická** - způsob jakým budou implementovány jednotlivá klíčová slova (pokud je tam if tak je to podmínka,...) | + | * //int number = 1 + 1;// |
+ | * Dojde k inicializaci deklarované proměnné " | ||
- | ===== Vlastnosti | + | ===== Vlastnosti |
- | * **Determinovanost** | + | * **Determinovanost** |
- | * **Obecnost** | + | * **Obecnost** |
- | * **Finitivnost** | + | * **Finitivnost** |
- | * **Resultativnost** | + | * **Resultativnost** |
- | * **Korektnost** | + | * **Korektnost** |
- | * **Efektivita** | + | * **Efektivita** |
===== Známé algoritmy ===== | ===== Známé algoritmy ===== | ||
- | ==== Erastotenovo | + | ==== Eratosthenovo |
- | Algoritmus pro získání všech prvočísel od dvou po dané číslo. Vytvoříme si pole všech čísel obsažených | + | Algoritmus pro získání všech prvočísel od dvou po dané číslo. |
+ | |||
+ | Postup: | ||
+ | |||
+ | Krok 1: Vytvoření seznamu, obsahujícího | ||
+ | |||
+ | Krok 2: První číslo ze seznamu je zapsáno jako prvočíslo do seznamu prvočísel a ze seznamu je vymazáno společně se všemi jeho násobky. | ||
+ | |||
+ | Krok 3: Opakuj krok 2, dokud není původní seznam prázdný. | ||
+ | |||
+ | Krok 4: Seznam prvočísel obsahuje | ||
[[https:// | [[https:// | ||
+ | |||
==== Euklidův algoritmus ==== | ==== Euklidův algoritmus ==== | ||
+ | |||
Algoritmus pro výpočet největšího společného dělitele (dále jen NSD) dvou čísel. | Algoritmus pro výpočet největšího společného dělitele (dále jen NSD) dvou čísel. | ||
- | Nejlépe se to asi ukáže na příkladu. Máme zadaná | + | Zde příklad: jsou zadána |
Postup: | Postup: | ||
- | | + | |
- | | + | |
- | - Po aplikaci prvního kroku na čísla 15 a 5 nám vyjde 15 = 3 * 5 + 0 | + | |
- | | + | |
+ | [[http:// | ||
==== Djikstrův algoritmus ==== | ==== Djikstrův algoritmus ==== | ||
- | Algoritmus sloužící pro vybrání | + | Algoritmus sloužící pro výběr |
- | {{ :informatika: | + | Postup: |
+ | * Každá cesta mezi jednotlivými body dostane hodnotu, podle " | ||
+ | * Algoritmus si postupně vypočítává délku cesty z bodu A do všech sousedních bodů a z nich do dalších bodů. | ||
+ | * Pokud algoritmus najde novou cestu do již objeveného bodu, pomalejší cestu k tomuto bodu odstraní. | ||
+ | * Na konci zůstane pouze jedna nejrychlejší cesta do kažhého z bodů. | ||
+ | * Algoritmus pak jako výstup vydá nejrychlejší cestu do požadovaného bodu B. | ||
+ | {{: | ||
+ | Pravděpodobnostní algoritmy: | ||
+ | |||
+ | ==== Algoritmus Las Vegas ==== | ||
+ | |||
+ | Algoritmus hledající prvek žádaného typu v množině s více typy prvků. V základní podobě algoritmu je narušen jak princip determinismu, | ||
+ | |||
+ | Postup: | ||
+ | * Algoritmus vybere prvek množiny s náhodně přiděleným pořadovým číslem v rámci povoleného rozsahu odpovídajícím velikosti možiny. | ||
+ | * Poté algoritmus u získaného prvku ověřuje typ, je-li typ shodný s typem hledaným, prvek vrátí jako výsledný výstup. | ||
+ | * Pokud však typ prvku neodpovídá, | ||
+ | |||
+ | |||
+ | ==== Algoritmus Monte Carlo ==== | ||
+ | |||
+ | Algoritmus s cílem analogickým k výše zmíněnému. Je alternativou k algoritmu Las Vegas, neboť nabízí konečnost (ukončení běhu cyklu v závislosti na parametru maximálního běhového času či počtu opakování cyklu) výměnou za jistou pravděpodobnost nedosažení cíle (není-li v rámci daného času či počtu opakování nalezen prvek žádaného typu, algoritmus skončí a vrátí se "s prázdnou" | ||
+ | |||
+ | Postup: | ||
+ | * Algoritmus vybere prvek množiny s náhodně přiděleným pořadovým číslem v rámci povoleného rozsahu odpovídajícím velikosti možiny. | ||
+ | * Poté algoritmus u získaného prvku ověřuje typ, je-li typ shodný s typem hledaným, prvek vrátí jako výsledný výstup. | ||
+ | * Pokud však typ prvku neodpovídá a zároveň není dosaženo maximálního času či počtu opakování cyklu, postup je zopakován. |
informatika/maturita/16a.1429892284.txt.gz · Poslední úprava: autor: xmrnustik