Podcast
Questions and Answers
Jaký typ algoritmu se opakuje v cyklu, dokud nedojde k požadovanému výsledku?
Jaký typ algoritmu se opakuje v cyklu, dokud nedojde k požadovanému výsledku?
Který typ algoritmu provádí všechny příkazy zároveň ve více vláknech?
Který typ algoritmu provádí všechny příkazy zároveň ve více vláknech?
Která kategorie jazyků je blíže strojovému kódu a pracuje s registry, paměťovými adresami a zásobníky?
Která kategorie jazyků je blíže strojovému kódu a pracuje s registry, paměťovými adresami a zásobníky?
Která kategorie vysokoúrovňových jazyků pracuje s objekty a operacemi na nich?
Která kategorie vysokoúrovňových jazyků pracuje s objekty a operacemi na nich?
Signup and view all the answers
Který typ jazyka pracuje s procedurami a voláními?
Který typ jazyka pracuje s procedurami a voláními?
Signup and view all the answers
Který typ jazyka používá příkazy, které mění stav programu?
Který typ jazyka používá příkazy, které mění stav programu?
Signup and view all the answers
Který typ jazyka pracuje s funkcemi?
Který typ jazyka pracuje s funkcemi?
Signup and view all the answers
Jaký typ jazyka se dělí podle míry abstrakce na nízkoúrovňové a vysokoúrovňové?
Jaký typ jazyka se dělí podle míry abstrakce na nízkoúrovňové a vysokoúrovňové?
Signup and view all the answers
Co znamená 'konečnost' v kontextu algoritmu?
Co znamená 'konečnost' v kontextu algoritmu?
Signup and view all the answers
Co je 'determinovanost' vlastnost algoritmu?
Co je 'determinovanost' vlastnost algoritmu?
Signup and view all the answers
Která generace programovacích jazyků je hardwarově nezávislá?
Která generace programovacích jazyků je hardwarově nezávislá?
Signup and view all the answers
Jaký je rozdíl mezi kompilovanými a interpretovanými jazyky?
Jaký je rozdíl mezi kompilovanými a interpretovanými jazyky?
Signup and view all the answers
Jaká je základní struktura programu v jazyce Wiring?
Jaká je základní struktura programu v jazyce Wiring?
Signup and view all the answers
Co jsou 'identifikátory' v kontextu programovacích jazyků?
Co jsou 'identifikátory' v kontextu programovacích jazyků?
Signup and view all the answers
Co určuje 'oblast platnosti' v kontextu programovacích jazyků?
Co určuje 'oblast platnosti' v kontextu programovacích jazyků?
Signup and view all the answers
Co je algoritmus?
Co je algoritmus?
Signup and view all the answers
Jak lze znázornit algoritmus?
Jak lze znázornit algoritmus?
Signup and view all the answers
Co je to algoritmizace?
Co je to algoritmizace?
Signup and view all the answers
Co je to program?
Co je to program?
Signup and view all the answers
Co je to programovací jazyk?
Co je to programovací jazyk?
Signup and view all the answers
Jaké jsou druhy algoritmů?
Jaké jsou druhy algoritmů?
Signup and view all the answers
Jaké jsou druhy programovacích jazyků?
Jaké jsou druhy programovacích jazyků?
Signup and view all the answers
Study Notes
- Algoritmus má sedm vlastností: konečnost, správnost, resultativnost, determinovanost, univerzálnost, opakovatelnost a konečnost.
- Konečnost: Algoritmus skončí po určitém počtu kroků, nezacykluje se.
- Správnost: Výsledek musí být správný, v Souladě se vstupními data.
- Resultativnost: Po určitém počtu kroků dospijí k řešení nebo vrátí chybový výsad.
- Determinovanost: V každém kroku je určen způsob pokračování práce algoritmu.
- Univerzálnost: Lze použít pro řešení obecné úlohy.
- Opakovatelnost: Vede vždy ke stejným výsledkům s danými vstupy.
- Existují čtyři základní generace programovacích jazyků: strojový kód, symbolické adrese, procedurální jazyky a objektově orientované jazyky.
-
- generace: Jednoúčelové programy, instrukce jsou tvořeny nulami a jedničkami, hardwarově závislý, obtížné při hledání chyb, nečitelný.
-
- generace: Obecné příkazy, zkracovány pomocí symbolických názvů, hardwarově závislý, čitelnost je lepší, ale porozumění je stále těžké.
-
- generace: Vyšší úroveň programování, representace reálného světa pomocí objektů, hardwarově nezávislý, jedná se o concept strukturovaného programování, procedury, jazyky: C, Pascal, SQL.
-
- generace: Objektově orientované jazyky, WYSIWYG, jedná se o snahu o reprezentaci reálného světa pomocí objektů, jazyky: C#.
- Rozdíl mezi minimize jazyky Wiring, PHP a C#: liší se způsobem překladu jejich zdrojového kódu, kompilované jazyky: C#, Wiring, interpretované jazyky: PHP.
- Základní struktura programu v jazyce C#: základní struktura se liší vytvořeným řešením (konzolová aplikace, desktopová aplikace.), seznam knihoven, jmenný prostor, třída (zapouzdřuje hlavní metodu), hlavní metoda.
- Základní struktura programu v jazyce Wiring: metoda
setup()
= vykoná se při startu programu, metodavoid()
= vykonává se opakovaně po dobu běhu programu. - Základní struktura programu v jazyce PHP: kód se píše mezi tagy do souboru s příponou
.php
. - Základní struktura programu v jazyce JavaScript: kód se (v základu) píše do souboru s příponou
.js
. - Základní struktura programu v jazyce Assembler: kód se minimize do souboru s příponou
.asm
. - Identifikátory: pojmenovávají entities jazyka, např. proměnné, typy, funkce, struktury, objekty.
- Zásady názvů identifikátorů: záleží na konkrétním jazyku.
- Oblasti platnosti: definují oblast, ze které je možné k vlastnosti přistupovat, rozlišujeme obecně: globální, modulová, funkční, kódového bloku.
- Rekurzivní algoritmus: si lze představit jako funkci, ve které je kód algoritmu zapouzdřený v rekurzi, rozdělí problem na několik podproblemů, jejichž výsledky uchovává v zásobníku, následně je používá k získání kýženého výsledku, funkce je znovu volána dříve, než je dokončeno její předchozí volání, stejný postup opakuje na částech vstupních dat, musí obsahovat zarážku (podmínku), která má rekurzivní volání ukončit a vrátit výsledek, výsledek vrácený zarážkou je použit k získání mezivýsledků (výsledků podproblémů), výsledky podproblémů postupně "vybublávají" napovrch, až je k dispozici výsledek pro vyřešení rozloženého problému.
- Výhody rekurzivního algoritmu: může být účinnější než iterativní řešení, jednodušeji popisovat komplikované problémy, může být snadněji paralelizovatelný, může být efektivnější v mnoha oblastech AI a matematiky.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Otestujte své znalosti algoritmů a programování tímto kvízem. Zjistěte, jak lze znázornit algoritmus a naučte se rozlišovat různé druhy algoritmů a proces algoritmizace.