Gymnázium, Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Hodonín Úvod do programování
Číslo projektu CZ.1.07/1.5.00/ Číslo materiálu VY_32_INOVACE_PoP_IKT_4OA_10 Autor Petr Polách Tematický celek IKT – technické vybvení počítačů Ročník 4. Datum tvorby Anotace Prezentace slouží jako podpora při výuce základů programování Metodický pokyn Prezentace slouží jako podpora při výuce s použitím projektoru nebo programu typu Master Eye.
Algoritmus Algoritmus - jednoznačný, přesný a srozumitelný popis posloupnosti operací, které vedou k určitému výsledku. Algoritmizace úlohy - proces hledání a tvorby algoritmu. 3
Požadavky na algoritmy Determinovanost algoritmu - v každém okamžiku provádění algoritmu musí být přesně a jednoznačně určen krok následující na základě kroků předchozích. Obecnost algoritmu - platnost algoritmu musí být zobecnitelná na celou třídu podobných úloh. Srozumitelnost algoritmu - algoritmus musí být zapsán tak, aby mu ten, kdo bude podle něj vykonávat určitou činnost mu rozuměl. (slovně, matematickým vzorcem, programovacím jazykem). 4
Obecnost - proměnné Proměnná - zajišťuje obecnost programu tím, že nahrazuje v algoritmu konkrétní hodnotu. Má název, který vystupuje v programu a obsah, který se může měnit. Název proměnné se skládá z písmen a číslic, začíná písmenem). Obsah proměnné představuje konkrétní číselnou nebo i textovou hodnotu, která je v dané chvíli v proměnné uložena. Je to místo v paměti s nějakým obsahem. Proměnná je vlastně pojmenované místo v paměti počítače 5
Operace s proměnnými OperaceObsah proměnné x x = 22 x = x + 57 x = 2* x14 x = Př.: Záměna obsahu dvou proměnných a), b)
Jazyky Prostředky pro zápis algoritmů nazývají jazyky. Jazyky jsou: přirozené - lidská řeč umělé - vhodné pro zápis algoritmů pro počítač 7 var cislo = 0; var faktorial = 1; cislo=prompt("zadej číslo: ",""); while(cislo > 1) { faktorial = faktorial*cislo; cislo = cislo -1; } alert ("Faktoriál čísla je" + faktorial);
Charakteristiky jazyků: přesně definovaná abeceda - množina používaných znaků a symbolů pravidla pro seskupování symbolů do vyšších jednotek - syntaxe jazyka (syntaktická chyba) pravidla pro přiřazování významu základním jednotkám jazyka - sémantika (sémantická chyba). 8
Jednoznačnost Lidská řeč nemá jednoznačná pravidla. Nejednoznačnost vyrovnává značnou redundancí (nadbytečností). Programovací jazyky jednoznačné být musí. 9
Jazyky pro zápis algoritmu pro počítač: grafické (názorné, přehledné, nelze přímo podle nich řídit počítač) Jazyk vývojových diagramů Strukturogramy programovací jazyky strojový kód (mikroprocesor - instrukce - instr. sada - program ve strojovém kódu - posloupnost kódů instrukcí) - jedině vhodné pro řízení počítače - obtížné programování) vyší programovací jazyky (Assembler, Pascal, Basic, C, Fortran,....). Algoritmy zapsané ve vyšších progr. jazycích je nutno před použitím na počítači přeložit do strojového jazyka - kompilace (Assembler, Pascal, Delphi, jazyk C, C++, C# …) - interpretace (Basic, VB, JavaScript, PHP, …) 10
Obr. 1VÝVOJOVÝ DIAGRAM (on-line) Dostupné na: Použité zdroje