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?
- Paralelní algoritmus
- Rekurzivní algoritmus
- Iterativní algoritmus (correct)
- Sériový algoritmus
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?
- Paralelní algoritmus (correct)
- Rekurzivní algoritmus
- Sériový algoritmus
- Iterativní algoritmus
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?
- Nízkoúrovňové jazyky (correct)
- Vysokoúrovňové jazyky
- Jazyky se rozdělují na kompilované, interpretované a transpilované.
- Imperativní jazyky
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?
Který typ jazyka pracuje s procedurami a voláními?
Který typ jazyka pracuje s procedurami a voláními?
Který typ jazyka používá příkazy, které mění stav programu?
Který typ jazyka používá příkazy, které mění stav programu?
Který typ jazyka pracuje s funkcemi?
Který typ jazyka pracuje s funkcemi?
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é?
Co znamená 'konečnost' v kontextu algoritmu?
Co znamená 'konečnost' v kontextu algoritmu?
Co je 'determinovanost' vlastnost algoritmu?
Co je 'determinovanost' vlastnost algoritmu?
Která generace programovacích jazyků je hardwarově nezávislá?
Která generace programovacích jazyků je hardwarově nezávislá?
Jaký je rozdíl mezi kompilovanými a interpretovanými jazyky?
Jaký je rozdíl mezi kompilovanými a interpretovanými jazyky?
Jaká je základní struktura programu v jazyce Wiring?
Jaká je základní struktura programu v jazyce Wiring?
Co jsou 'identifikátory' v kontextu programovacích jazyků?
Co jsou 'identifikátory' v kontextu programovacích jazyků?
Co určuje 'oblast platnosti' v kontextu programovacích jazyků?
Co určuje 'oblast platnosti' v kontextu programovacích jazyků?
Co je algoritmus?
Co je algoritmus?
Jak lze znázornit algoritmus?
Jak lze znázornit algoritmus?
Co je to algoritmizace?
Co je to algoritmizace?
Co je to program?
Co je to program?
Co je to programovací jazyk?
Co je to programovací jazyk?
Jaké jsou druhy algoritmů?
Jaké jsou druhy algoritmů?
Jaké jsou druhy programovacích jazyků?
Jaké jsou druhy programovacích jazyků?
Flashcards are hidden until you start studying
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.