22 Questions
Jaký typ algoritmu se opakuje v cyklu, dokud nedojde k požadovanému výsledku?
Iterativní algoritmus
Který typ algoritmu provádí všechny příkazy zároveň ve více vláknech?
Paralelní algoritmus
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
Která kategorie vysokoúrovňových jazyků pracuje s objekty a operacemi na nich?
Objektivně orientované jazyky
Který typ jazyka pracuje s procedurami a voláními?
Procedurální jazyky
Který typ jazyka používá příkazy, které mění stav programu?
Imperativní jazyky
Který typ jazyka pracuje s funkcemi?
Funkční jazyky
Jaký typ jazyka se dělí podle míry abstrakce na nízkoúrovňové a vysokoúrovňové?
Vysokoúrovňové jazyky
Co znamená 'konečnost' v kontextu algoritmu?
Algoritmus skončí po určitém počtu kroků a nebude se zacyklí.
Co je 'determinovanost' vlastnost algoritmu?
V každém kroku je určen způsob pokračování práce algoritmu.
Která generace programovacích jazyků je hardwarově nezávislá?
- generace
Jaký je rozdíl mezi kompilovanými a interpretovanými jazyky?
Kompilované jazyky překládají zdrojový kód do strojového kódu, zatímco interpretované provádějí překlad za běhu programu.
Jaká je základní struktura programu v jazyce Wiring?
setup()
metoda pro inicializaci a loop()
metoda pro opakované vykonání kódu.
Co jsou 'identifikátory' v kontextu programovacích jazyků?
Názvy pojmenovávající entities jazyka, jako jsou proměnné, typy, funkce atd.
Co určuje 'oblast platnosti' v kontextu programovacích jazyků?
'Oblast platnosti' definuje do jakých částí kódu je možné přistupovat a kde jsou platné proměnné.
Co je algoritmus?
Řešení určitého problému, který se skládá z řady kroků, které se musí postupně provést
Jak lze znázornit algoritmus?
Pseudokódem
Co je to algoritmizace?
Proces tvorby algoritmu pro řešení konkrétního problému
Co je to program?
Posloupnost instrukcí, která popisuje činnost počítače
Co je to programovací jazyk?
Nástroj pro implementaci algoritmů a zápis programů
Jaké jsou druhy algoritmů?
Rekurzivní
Jaké jsou druhy programovacích jazyků?
Nízkoúrovňové, vysokoúrovňové
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.
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.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free