17 Základy algoritmizace a programování Algoritmus Možnosti zápisu algoritmů. Základy algoritmizace a programování

Rozměr: px
Začít zobrazení ze stránky:

Download "17 Základy algoritmizace a programování. 17.1 Algoritmus. 17.1.1 Možnosti zápisu algoritmů. Základy algoritmizace a programování"

Transkript

1 17 Základy algoritmizace a programování 17.1 Algoritmus Algoritmus je posloupnost operací, která řeší daný úkol v konečném počtu kroků. Je to přesný postup, který je potřeba k vykonání určité činnosti. Jinak řečeno - algoritmus je jednoznačný a přesný popis řešení problému. Kaţdý algoritmus musí mít tyto vlastnosti: Rezultativnost (konečnost) algoritmus musí mít začátek a konec.musí proběhnout v konečném počtu kroků Determinovanost (předurčenost) algoritmus musí být jednoznačný. Všechny operace i jejich návaznosti musí být jednoznačně určeny (definovány) a nic nesmí být náhodné. Činnost algoritmu nesmí záviset na libovůli osoby ani na vlastnostech zařízení, které ho realizují. Obecnost (hromadnost) algoritmus musí řešit úlohu pro různé vstupní hodnoty. Opakovatelnost při stejných vstupních hodnotách musíme dostat vţdy stejný výsledek. Správnost algoritmus musí být věcně správný. Srozumitelnost algoritmus musí být srozumitelný i pro uţivatele, který daný algoritmus nevytvářel Možnosti zápisu algoritmů Slovní vyjádření Pouţívá se pro skupinu lidí, která nemá programátorské vzdělání návody k obsluze, recepty, postup práce. Výhodou je, ţe se lze domluvit i s laikem. Nevýhodou je malá přehlednost a absence nástrojů k dodrţení vlastností algoritmu. Příklad: Algoritmus přípravy polévky ze sáčku Formulace problému: Uvař polévku ze sáčku. Analýza úlohy Vstupní údaje: polévka, voda, hrnec, lţíce, vařič Výstupní údaje: uvařená polévka Analýza: Polévku nesmíme převařit ani vyvařit Sestavení algoritmu Slovní popis: - vyber poţadovanou polévku - do hrnce napusť studenou vodu - rozmíchej polévku ve studené vodě lţící - zapni vařič - vař polévku 10 minut - Vypni vařič 393

2 Matematické vyjádření Pouţívá se tam, kde je moţné daný problém popsat matematickým vyjádřením. Výhodou je, ţe jednoznačný. Nevýhodou můţe být, ţe při neošetření vstupních podmínek nemusí být věcně správný Vývojový diagram Je to symbolický, algoritmický jazyk, který se pouţívá pro názorné zobrazení algoritmu. Je to jednoznačný komunikační prostředek při týmové práci, je přehledný a má nástroje k dodrţení algoritmu. Výborně se hodí k dokumentačním účelům, kde je přehlednější neţ výpis programu. Nevýhodou můţe být, ţe mu laik nemusí rozumět. Rozhodovací tabulka Tento zápis se pouţívá v případě, kdy se v dané úloze vyskytuje několik moţností a vlastní řešení je pro kaţdou moţnost jednoznačně popsatelné (rozvrh, tabulka logického součinu..) Výhodou jednoznačný a přehledný zápis. Je výhodný zejména při větším počtu moţností řešení. Bývá srozumitelný i laikům. Nevýhodou můţe být u velkých tabulek ztráta přehlednosti a nemusí se hodit pro kaţdý typ úlohy. Počítačový program Pouţívá se pro zápis instrukcí z vytvořeného algoritmu, kterému počítač rozumí a umí z něho vytvořit strojový kód. Výhodou je forma zápisu, které rozumí člověk i počítač (pokud je vybaven příslušným překladačem). Nevýhodou je, ţe zápisu rozumí pouze programátor, který umí daný programovací jazyk. Výpis počítačového programu můţe být málo názorný a nepřehledný. Objektová analýza Tato metoda se pouţívá v objektově orientovaném programování. Výhodou je forma zápisu, které rozumí člověk i počítač (pokud je vybaven příslušným překladačem). Nevýhodou je, ţe zápisu rozumí pouze programátor, který umí daný programovací jazyk. Výpis počítačového programu můţe být málo názorný a nepřehledný Algoritmizace Algoritmizace je postup při tvorbě programu pro počítač, kterým lze prostřednictvím algoritmu řešit nějaký problém. Algoritmizaci lze rozdělit do několika částí - formulace problému - analýza úlohy - vytvoření algoritmu - sestavení programu - odladění programu 394

3 Formulace problému V této části je třeba přesně formulovat poţadavky, určit výchozí hodnoty, poţadované výsledky, jejich formu a přesnost řešení. Analýza úlohy Při analýze úlohy si ověříme, zda je úloha řešitelná a uděláme si první představu o jejím řešení. Dále zjistíme, zda výchozí hodnoty jsou k řešení postačující a zda má úloha více řešení. Podle charakteru úlohy vybereme nejvhodnější řešení. Vytvoření algoritmu úlohy Provádí se při tvorbě jakéhokoliv programu. Sestavíme jednoznačný sled jednotlivých operací, které je třeba provést, aby byla úloha správně vyřešena. Algoritmus přesně popisuje postup zpracování daného úkolu, nedává však odpověď na daný problém, ale pouze postup, jak ji získat. Sestavení programu Na základě algoritmu řešené úlohy sestavíme program (zdrojový text) v konkrétním programovacím jazyce. Ze zdrojového textu se pomocí překladače do strojového kódu vytvoří spustitelný program. Dá se tedy říci, ţe dobře provedená analýza úlohy a algoritmizace daného problému je základním předpokladem sestavení programu pro počítač. Odladění programu Cílem odladění je odstranění chyb z programu. Chyby se nejčastěji projeví nesprávnou činností programu nebo špatnými výsledky. Chyby v programech mohou být syntaktické nebo logické. Syntaktické - špatně zapsaný nějaký příkaz. Překlad programu se zastaví a zobrazí se hlášení o chybě. Tyto chyby jsou snadno opravitelné. Logické - program je funkční, ale nedělá co má. Můţe skončit v nekonečném cyklu. Pro ladění se vţdy pouţívá několik kontrolních příkladů. Při odstraňování těchto chyb můţe pomoci ladící program (debugger) umoţňující sledování aktuálního stavu proměnných a krokování. Teprve po odstranění všech druhů chyb můţeme program pouţít k praktickému řešení úloh. Tyto chyby se velmi špatně identifikují. Důležité pojmy v rámci algoritmizace a programování Proměnná - je to místo v paměti počítače, ve kterém se nachází určitá hodnota Identifikátor - je název proměnné Datový typ - je to určitý typ proměnné char - znak integer - celé číslo real - reálné číslo boolean - logická proměnná Deklarace stanovení proměnných jakého jsou typu. Provádí se vţdy na začátku programu. Syntaxe přesné určení, jak se mají jednotlivé příkazy a části programu zapisovat Strojový kód je to programový kód, který jediný dokáţe počítač přímo zpracovávat. 395

4 17.3 Rozdělení programovacích jazyků Strojově orientované - strojový jazyk (jazyk fyzického procesoru) - asembler (jazyk symbolických adres) Vyšší programovací jazyk je to programovací jazyk, jehoţ příkazy jsou tvořeny pomocí klíčových slov, jejichţ význam musí být převeden do strojového kódu, aby mohl program napsaný ve vyšším programovacím jazyce být spuštěn. - obecné - (C, C++, C#, Objekt Pascal, Visual Basic,.NET Framework, Java) - databázové (MS Fox Pro, Oracle) - pro webové klienty (Java, JavaScript, ActiveX) - specializované (makrojazyky, simulační jazyky) Aby mohl procesor napsaný program zpracovat musí být před zpracování přeloţen do strojového kódu. To zajistí tzv. překladače. Rozeznáváme dva druhy těchto překladačů. - Překladač neboli kompilátor je program, který ze zdrojového kódu vytvoří spustitelný soubor. Vytvoří instrukce pro procesor. - Iterpreter načítá program v textovém zápisu a okamţitě jednotlivé příkazy vykonává. Program tedy není předem přeloţený. Pouţívá se například u skriptů ve webových stránkách Strukturované programování Je to soubor doporučení, jak by měl dobře napsaný program vypadat. Tato doporučení vytvářejí jakési mantinely pro programátory. Strukturované programování je zaloţeno na dvou principech. - Sloţitou úlohu rozdělíme na dílčí úkoly, které řešíme samostatně a metodou shora dolů propojíme úlohu v jeden celek. - Při návrhu řešení dílčích úloh pouţijeme pouze povolené řídící struktury - sekvence - větvení - cykly - přepínače Objektové programování Je to soubor doporučení, jak by měl dobře napsaný program vypadat. Přínosem objektového programování je také větší strukturovanost a modularita vytvářeného programu. Objektově orientovaný přístup tvorby programu je charakterizován třemi základními vlastnostmi. 396 Obalení (zapouzdření) - je realizováno novým datovým typem objekt. Obsahuje kromě datových poloţek také řídící struktury metody. Oním obalením tedy můţete rozumět obalení datových poloţek řídícími strukturami metodami, které zajišťují přístup k datovým poloţkám.

5 Dědičnost inheritance - umoţňuje vytvářet nové objekty jako potomky jiţ existujících objektů předků, přebírat od nich datové poloţky a metody a modifikovat je či upřesňovat. Polymorfismus (mnohotvarost) - polymorfismus je vlastnost objektové programování, která umoţňuje pojmenovat metodu jedním jménem a tato metoda můţe být společná pro různé objekty ve stromové hierarchii, i kdyţ pro kaţdý objekt v této hierarchii se bude chovat různě. Při objektovém přístupu k tvorbě programu nezkoumáme způsob funkce programu, ale způsob změn dat. Objektový program je řízem tokem událostí. Vizuální programování Vizuální programování je dnes většinou objektové a současně strukturované. Spočívá v tom, ţe velké mnoţství standardně pouţívaných objektů (tlačítka, políčka, práci se soubory) je jiţ připraveno a jen je myší přetahujeme do vytvářeného programu. Vývojové prostředí Je to komplexní nástroj na tvorbu programů. Obsahuje: - překladač pro určený programovací jazyk - nástroje na vizuální tvorbu programu - hotové komponenty programů - nástroje pro ladění a odstraňování chyb 17.4 Vývojový diagram Vývojový diagram je grafické vyjádření poţadovaného algoritmu (znázornění jednotlivých příkazů, ze kterých se algoritmus skládá). Pro vývojový diagram se pouţívají stanovené značky, které nelze měnit. Spojnice - orientované - neorientované 397

6 Mezní značky ZAČÁTEK KONEC RETURN Ruční zadání vstupních dat R= A Zpracování VÝPOČET C=A+B Výstup TISK Vstup ČTI: A, B Spojka 3 Podmínka (rozhodování) A>20 ANO NE Přepínání 1 12 k= k=

7 Cyklus I= 2,8,15 I= 2,8,15 tělo tělo Konec I Konec I Podprogram Chyby v algoritmech Při psaní programů musíte dbát na správný zápis matematických vzorců. V programech nelze pouţít zlomkové čáry. Místo zlomkové čáry se pouţívá lomítko /. Rovnici musíme zapsat takto: X:=(A+B)/(C+D) V programech nelze dále pouţít (odmocninu) a. (násobení). Místo znaku pouţíváme výraz SQRT a místo znaku. pouţíváme znak *. Místo znaku pouţíváme výraz PI. Špatný algoritmus, protoţe byla porušena podmínka rezultativnosti - konečnosti - algoritmus musí proběhnout v konečném počtu kroků. Písnička se bude zpívat pořád dokola a nikdy neskončí. Došlo k zacyklení programu. 399

8 Správné řešení Špatný algoritmus, protoţe byla porušena podmínka rezultativnosti - konečnosti - algoritmus musí proběhnout v konečném počtu kroků. Co kdyţ hned ze začátku je I větší neţ 10? Došlo k zacyklení programu. Správné řešení 400

9 Špatný algoritmus, protoţe byla porušena podmínka věcné správnosti. Algoritmus je funkční, ale dostanete nesprávný výsledek Špatný algoritmus, protoţe byla porušena podmínka jednoznačnosti (determinovanost - podmíněnost) - všechny operace i jejich návaznosti musí být jednoznačně určeny (definovány) a nic nesmí být náhodné. Správné řešení 401

10 Špatný algoritmus, protoţe byla porušena podmínka jednoznačnosti (determinovanost - podmíněnost) - všechny operace i jejich návaznosti musí být jednoznačně určeny (definovány) a nic nesmí být náhodné. Co kdyţ ve jmenovateli bude 0? Musíme ošetřit hodnoty, které se blíţí k nekonečnu. Pokud je řešení v oboru reálných čísel, nesmí být výraz pod odmocninou záporný Jsou to nejzávaţnější chyby v programech. Správné řešení Špatný algoritmus, protoţe byla porušena podmínka obecnosti (hromadnosti) - algoritmus musí řešit úlohu pro různé vstupní hodnoty. 402

11 Správné řešení Špatný algoritmus, protoţe byla porušena podmínka opakovatelnosti - při stejných vstupních hodnotách musíme dostat vţdy stejný výsledek. Proměnná I je neznámá. Správné řešení 403

12 Ukázky algoritmů Sekvence Sekvence je nejjednodušším typem algoritmu, který se skládá (kromě mezních značek) pouze ze sekvenčních bloků. Během sekvence nesmí docházet k větvení algoritmu ani k návratu zpět. Větvení Nejčastějším důvodem větvení je ošetření neţádoucích důsledků. Musí být ošetřeny všechny moţnosti, které mohou nastat. Situace se musí nejdříve vyhodnotit. Teprve poté se provede činnost. - dělení - výpočet výrazů s odmocninou - další funkce (goniometrické) 404

13 Cykly Cykly jsou jedním z nejsilnějších nástrojů algoritmů. Podstatou je opakování určité části algoritmu. Cyklus musí být konečný. - cykly s pevným počtem opakování - cykly řízené podmínkou s podmínkou na začátku cyklu - cykly řízené podmínkou s podmínkou na konci cyklu Cyklus s pevným počtem opakování Cyklus řízený podmínkou - podmínka je na začátku Cyklus řízený podmínkou - podmínka je na konci 405

14 Čekací smyčka Příklady 1. Je dán obdélník o stranách A, B. Vytvořte algoritmus pro výpočet obvodu (O) a obsahu (S) tohoto obdélníka. 2. Je dána kruţnice o poloměru R. Vytvořte algoritmus pro výpočet obvodu (O) této kruţnice a výpočet obsahu (S) kruhu, který leţí uvnitř této kruţnice. 3. Je dán rovnostranný trojúhelník o stranách A. Vytvořte algoritmus pro výpočet obvodu (O) a obsahu (S) tohoto trojúhelníka. 4. Je dán pravoúhlý trojúhelník o stranách A, B, C. Vypočítejte stranu C. 5. Vytvořte algoritmus pro výpočet výrazu tak, aby se výpočet alespoň jednou uskutečnil. 6. Vytvořte algoritmus pro výpočet výrazu 7. Vytvořte algoritmus pro výpočet výrazu 8. Vytvořte algoritmus pro zjištění zda zadané číslo je kladné, či záporné. 9. Vytvořte algoritmus pro porovnávání a řazení dvou čísel od největšího do nejmenšího. 10. Vytvořte algoritmus pro nalezení největšího ze tří zadaných čísel. 11. Vytvořte algoritmus pro určení, zda tři čísla A, B, C mohou tvořit strany trojúhelníka. 12. Vytvořte algoritmus pro řešení lineární rovnice - A*X + B =0 - proměnné A, B jsou načítány zvenčí - X hledaný kořen rovnice 13. Vytvořte algoritmus pro vytvoření kalkulačky, která bude pracovat se dvěma čísly. Poţadované matematické operace - sčítání, odečítání, násobení, dělení 14. Vytvořte algoritmus pro výpočet veličin rychlost, dráha a čas pohybu rovnoměrného přímočarého. 15. Vytvořte algoritmus pro výpočet výsledného odporu R, který se skládá ze dvou paralelních odporů R1 a R2. Algoritmus bude fungovat tak, ţe budete moci postupně zadávat různé hodnoty odporů R1 a R2 pro výpočet výsledného odporu R. 16. Vytvořte algoritmus pro zobrazení čísel od jedničky do desítky. 17. Vytvořte algoritmus pro sečtení čísel od jedničky do desítky. 18. Vytvořte algoritmus pro výpočet faktoriálu zadaného čísla. 406

15 18 Základy programování v PHP Programovací jazyk PHP (Hypertext preprocessor) je skriptovací jazyk, který běţí na straně serveru. Server posílá do vašeho počítače pouze výsledky. Pouţívá se pro tvorbu webových aplikací dynamických stránek. Je postaven na základech jazyka C. Skriptovací jazyk PHP je neustále velmi rychle vyvíjen. Je to nejčastěji pouţívaný modul na internetových serverech. Výhody jazyka PHP: PHP je jazyk, který je relativně jednoduchý na pochopení PHP má syntaxi velmi podobnou jazyku C a je tedy většině vývojářů dost blízký PHP podporuje širokou řadu souvisejících technologií, formátů a standardů Je to otevřený projekt s rozsáhlou podporou komunity Dá se najít velké mnoţství jiţ hotového kódu k okamţitému pouţití nebo funkční PHP aplikace Podstatná část z hotového kódu je šířena pod nějakou svobodnou licencí a dá se pouţít ve vlastních projektech PHP si dobře rozumí s webovým serverem Apache i IIS PHP snadno komunikuje s databázemi, jako je MySQL, PostgreSQL atd. PHP je multiplatformní a lze jej provozovat s většinou webových serverů a na většině dnes existujících operačních systémů PHP podporuje mnoho existujících poskytovatelů webhostingových sluţeb Nevýhody jazyka PHP: PHP je interpretovaný, ne kompilovaný jazyk Interpretovaný jazyk je překládán aţ za běhu programu. Je pomalejší, ale nemá tak velké formální poţadavky. Překládají se interpretrem, ten instrukce zároveň při překladu provádí a to vše na straně serveru. Kompilovaný jazyk je nejdříve celý přeloţen a aţ potom můţe být spuštěn. Je rychlejší neţ jazyk interpretovaný, má však vyšší nároky na formální správnost kódu. Překládá se kompilátorem, výsledkem překladu je (většinou).exe soubor. Kdokoli má přímý přístup k serveru, můţe nahlédnout do vašich PHP skriptů Podpora objektového programování není v PHP na moc dobré úrovni. Protoţe je PHP aktivně vyvíjen, v budoucích verzích jazyka se mohou některé funkce změnit nebo se mohou chovat jinak neţ dosud. Mezi nejčastější aplikace psané v PHP patří například: - diskusní fóra - chaty - internetové obchody - informační systémy - redakční systémy -firemní prezentace - dynamické osobní stránky - vyhledávače a katalogy - drobnosti typu počitadla, ankety a mnoho dalších 407

16 18.1 Princip PHP PHP skriptovací jazyk, který běţí na serveru. Typický PHP skript obsahuje jednak kusy normálního HTML (XHTML) kódu, a jednak kusy programového kódu PHP. Kdyţ webový server obdrţí poţadavek na zpracování takového skriptu, všechny kusy HTML kódu přeskočí a zpracuje pouze PHP programový kód. Výsledky ze zpracování programového kódu vloţí do HTML kódu. Všechny příklady musí být pro svou funkčnost vloţeny na internetový server. Příklad: Kód bez PHP //xml version="1.0" encoding="utf-8" <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " <html xmlns=" xml:lang="cs" lang="cs"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="description" content="... obsah dokumentu.." /> <meta name="author" content="vaše jméno" /> <title>úvod do PHP</title> <link rel="stylesheet" href="styl.css" type="text/css" /> </head> <body> <p>stránka bez PHP. Nevím kolik je hodin.</p> </body> </html> U prvního řádku vloţte před značku xml dvě lomítka. Tím zajistíte, ţe se tento řádek nebude zpracovávat v interpreteru PHP. Pouţitá sekvence znaků značí začátek xml kódu, ale také to můţe být začátek PHP kódu. Dvě lomítka pro PHP znamenají poznámku a tento řádek přeskočí. 408

17 Pokud si zobrazíte v prohlíţeči zdrojový kód stránky (pomocí pravého tlačítka myši a volby zobrazit zdrojový kód), uvidíte, co přesně do vašeho prohlíţeče server poslal. Kód s PHP //xml version="1.0" encoding="utf-8" <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " <html xmlns=" xml:lang="cs" lang="cs"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="description" content="... obsah dokumentu.." /> <meta name="author" content="vaše jméno" /> <title>úvod do PHP</title> <link rel="stylesheet" href="styl.css" type="text/css" /> </head> <body> <p>stránka s PHP. Vím, ţe právě je echo Date("G:i") hodin.</p> </body> </html> Při kontrole poslaného kódu serverem, si všimněte, ţe server z PHP příkazu vloţil do HTML pouze výsledek 13:26. Prohlíţeč nemá sebemenší tušení, co všechno se na serveru dělo neţ mu byl výstup odeslán, vidí jen samotný výsledek. Části PHP kódu se do skriptů vkládají pomocí speciálních značek: a nebo php a Celý soubor můţe být jeden dlouhý PHP kód. Pak začíná a končí znaky a. V souboru můţe být kód PHP jen na jednom určitém místě nebo na více místech. V souboru také ţádný PHP kód 409

18 být nemusí. Můţe se tvářit jako php skript, ale ve skutečnosti je to normální HTML soubor a PHP kód v něm vůbec není. Při uloţení PHP souboru musí mít soubor příponu php (nebo další povolené přípony na serveru). Kaţdý programový řádek (ukončená funkce) musí končit znakem středník (;). Programový kód můţete psát v libovolném editoru bez formátování. Naprosto nevhodný je například Word. Jeden z nejlepších programů je český program PSPad (neplacený). Je to program pro tvorbu souborů v různých formátech. Výhody pouţití programu PSPad: Pomocí protokolu FTP moţnost práce přímo na internetovém serveru Velmi jednoduchá a intuitivní práce Neomezená délka editovaného textu Moţnost otevření více dokumentů současně Záznam maker s moţností uloţení na disk a ruční editace Práce s projekty Hledání a nahrazování v souborech Nalezení rozdílů v textových souborech (porovnání verzí) Zvýraznění syntaxe Automatické rozpoznání syntaxe podle typu souboru s moţností manuální změny Volitelné zobrazení čísel řádků, podbarvení aktuálního řádku, pravítko Převody velikosti písmen (malá, velká, první písmena velká) Program velice dobře zvýrazňuje syntaxi různých jazyků. Po spuštění si nastavte syntaxi pro PHP. Pokud vytvořený PHP soubor uloţíte na lokální a potřebujete vyzkoušet jeho funkčnost, musíte ho nahrát na internetový server. To můţete provést například pomocí programu Total Commander. Postup: 1. Spusťte Total Commander 2. Zvolte ikonu FTP 3. Zvolte tlačítko Nové připojení 4. Zadejte Relaci (soscb) 5. Zadejte hostitele (soscb.cz) 410

19 6. Zatrhněte funkci Použít pasivní režim 7. Zadejte OK a pak Připojit 8. Po odeslání zadejte přístupové jméno 9. Zadejte přístupové heslo 10. Soubory se nakopírujte do vašeho adresáře 11. Spusťte php skript - např.: jméno/pokus.php Další moţností je nakonfigurovat si v lokálním počítači webový server Apache a podporu pro php. Zjištění funkčnosti PHP Pokud se vám zdá, ţe vaše programy nejsou funkční, je dobré nejdříve zkontrolovat, zda je na serveru nainstalován modul PHP. Vytvořte soubor s následující funkcí a uloţte ho na server (nezapomeňte na příponu souboru - php): phpinfo (); Pokud je vše v pořádku a PHP je nainstalován, zobrazí se podrobný výpis nastavení PHP. Jak jste jiţ četli, jednotlivé instrukce se oddělují středníkem. Pokud to neprovedeme, dojde k syntaktické chybě a systém zobrazí v prohlíţeči: Výhodou je, ţe nám systém oznámí, na kterém řádku se uvedená chyba vyskytuje. Dejte pozor, pokud je funkce na více řádcích, můţe být chyba nad uvedeným řádkem. Špatně echo "První řádek" echo "Druhý řádek" Správně: echo "První řádek" ; echo "Druhý řádek" ; 411

20 18.2 Komentáře Pokud píšete delší program, pouţívejte v programovém kódu komentáře. Tím zajistíte, ţe se v kódu vyznáte i po několika měsících či letech. Komentář je něco, co program při zpracování ignoruje a slouţí tedy pouze uţivateli. Komentáře mohou být v PHP jednořádkové nebo víceřádkové. // - (dvě dopředná lomítka) jednořádkový komentář # - (mříţka) jednořádkový komentář dvojice /* a */ (lomítko+hvězdička a hvězdička+lomítko) víceřádkový kometář // skriptu je jedno, co tady napíšu # skriptu je úplně jedno, co tu bude /* Nevím, jestli to, co napsáno v tomto skriptu bude fungovat. Ještě se na to budu muset podívat. */ Víceřádkovým komentářem můţete zakomentovat celý blok textu velice rychle, a také velice špatně. Pamatujte, ţe víceřádkové komentáře nelze vnořovat. První sekvence */ totiţ celý komentář ukončí. Následující kód tedy skončí chybou: /* Chci to zakomentovat. To by přece nemělo vadit. /* Ale díky "vnořenému" víceřádkovému komentáři... uţ to vadí */ */ 18.3 Příkaz echo Příkaz echo vytiskne jeden nebo více řetězců. echo "Dnes svítí sluníčko"; echo "Dnes svítí sluníčko ", "Zítra bude pršet ", "Pozítří bude oblačno"; 412

21 Víceřádkový řetězec Budete-li chtít vytisknout víceřádkový řetězec, můţete provést něco jako: echo "Tohle bude první řádek Tohle bude druhý řádek Tohle bude třetí řádek" Rovnocenný zápis bude i zápis s tzv. speciální sekvencí znaků \n. echo "Tohle bude první řádek\ntohle bude druhý řádek\ntohle bude třetí řádek" \n je jednou z tzv. escape sekvencí Escape sekvence Pomocí speciálních zápisů můţeme zobrazit znaky, které by jinak PHP zpracoval jako součást příkazu. Sekvence Význam \n Nový řádek \" Uvozovky \r Přechod na začátek řádku \t Tabelátor \\ Zpětné lomítko \$ Dolar Takţe, budete-li chtít donutit příkaz echo, aby ve výstupu zobrazil skutečnou uvozovku, můţete napsat něco jako: echo "PHP uţ \"běţně\" programuji" ; Pokud jste si zkoušeli uvedený příklad s řádky a máte pocit, ţe tam cosi nehraje, máte pravdu. V prohlíţeči totiţ budou všechny údaje na jednom řádku. Musíte si uvědomit, jak prohlíţeč předané informace zobrazuje. Kdyţ pošlete prohlíţeči poţadavek na skript uvedený výše a necháte si zobrazit zdrojový kód stránky která dorazí, zjistíte, ţe tam ty konce řádku opravdu jsou. HTML ale nezalamuje řádek tehdy, kdyţ je znak konce řádku v kódu, HTML má k tomu značku <br />. Je samozřejmě moţné vloţit značku HTML do řetězce v PHP, třeba takto: echo "Tohle bude první řádek<br />Tohle bude druhý řádek<br />Tohle bude třetí řádek" ; 413

22 Prohlíţeč obdrţí následující kód: Tohle bude první řádek<br />Tohle bude druhý řádek<br />Tohle bude třetí řádek" ; Pokud budete chtít být bezchybní a mít validní kód, můţete napsat kód i takto: echo "Tohle bude první řádek<br />\ntohle bude druhý řádek<br />\ntohle bude třetí řádek" ; Prohlíţeč obdrţí následující kód: Tohle bude první řádek<br /> Tohle bude druhý řádek<br /> Tohle bude třetí řádek" ; 18.5 Spojování řetězců Spojování řetězců se prování pomocí operátoru. (tečka). echo "Klidně si spojím jméno "."s příjmením"; Tečka zde vede ke spojení, zřetězení řetězců. Je rovněţ moţné spojit více neţ dva řetězce Proměnné v PHP Kaţdý programovací jazyk pracuje s nějakými hodnotami. To, do čeho se tyto hodnoty ukládají, se nazývá proměnné. Kaţdá proměnná má: - název (někdy se mu říká identifikátor) - hodnotu (někdy se označuje termínem literál) V kaţdém okamţiku je hodnota proměnné v programu jednoznačně daná, během programu se však můţe měnit Typy proměnných Typ Název v PHP Popis Logický typ Boolean Uchovává hodnotu "pravda" nebo "nepravda". Zapisuje se jako TRUE a FALSE Celočíselný typ Integer Uchovává celá kladná i záporná čísla (a nulu) (-2 bilióny aţ + 2 bilióny) 414

23 Desetinné číslo Float nebo Real Uchovává desetinná čísla s přesností obyčejně na 14 desetinných míst (velikost čísla má 308 nul). Řetězec String Uchovává texty neboli řetězce. Řetězec je znak nebo sada znaků, v PHP prakticky neomezené délky. - Kaţdá proměnná musí mít jednoznačný název. Ten v PHP začíná znakem dolaru ($) a následuje (bez mezery) nějakým pojmenováním. - První znak toho pojmenování musí být buď písmeno a-z nebo podtrţítko. Nesmí to být číslo ani nic jiného. - Názvy proměnných v PHP rozlišují mezi malými a velkými písmeny, takţe pozor na to. Praxe bývá většinou taková, ţe se proměnné píší malými písmeny. - Desetinná čísla se zadávají s tečkou, ne s čárkou. - Řetězce se uzavírají do uvozovek nebo do apostrofů. Ukázky proměnných //logický typ $mam_malo_penez = TRUE; //celočíselný typ $plat = 10000; //desetinné číslo $disketa = 3.5; //řetězec $prohlaseni = "Příští měsíc budou prázdniny." ; //Proměnné vypíšete opět příkazem echo. echo $mam_malo_penez."<br />"; echo $plat."<br />"; echo $disketa."<br />"; echo $prohlaseni."<br />"; Běžné chyby v proměnných // tohle bude špatně. Proměnná nesmí začínat číslem $3sestry = "tři sestry" ; // tohle sice projde, ale nic to nevypíše (velikost písmen v názvu) $rok = 2004; echo $Rok; 415

24 18.7 Operátory Operátor se pouţívá k zjištění hodnoty pomocí provedení procedury. OPERÁTOR OPERACE PŘÍKLAD POPIS + Sčítání součet 1 a 2 = 3 - Odečítání 2 1 rozdíl 2 a 1 = 1 * Násobení 2 * 1 součin 2 a 1 = 2 / dělení 3 / 2 podíl 3 a 2 = 1.5 % zbytek (modulo) 3 % 2 počítá zbytek celočíselného dělení = 1 == Rovnost $a == $b $a a $b mají stejnou hodnotu < Menší $a < $b $a je menší neţ $b > Větší $a > $b $a je větší neţ $b <= menší nebo rovno $a <= $b $a je menší nebo rovno $b => větší nebo rovno $a => $b $a je větší nebo rovno $b!= Nerovnost $a!= $b $a se nerovná $b <> Nerovnost $a <> $b $a se nerovná $b 18.8 Proměnná typu Pole V PHP je kromě základních datových typů (celá čísla, desetinná čísla, logické hodnoty a řetězce) k dispozici i datový typ pole. To je speciální struktura, která můţe v jedné proměnné obsahovat sadu hodnot. Pole má prvky; kaţdý prvek má index nebo klíč a hodnotu. Definice pole $jmeno[1]="petr"; $jmeno[2]="pavel"; $jmeno[3]="maruška" ; $jmeno[4]="eva"; $jmeno[5]="roman"; Tímto zápisem vznikne proměnná $jmeno (pole), která obsahuje pět prvků, z nichţ kaţdý má svůj index (například trojku) a hodnotu (Maruška). Z toho vidíte, ţe pole se v PHP zapisují jako kaţdá jiná proměnná, pouze za názvem mají v hranatých závorkách index. Toto pole je indexované. Někdy můţe ale být šikovnější rozlišit od sebe prvky pole řetězcem, čímţ vznikne tzv. asociativní pole. $pocet_lidi["praha"]= ; $pocet_lidi ["Ústí nad Labem"]=100000; $pocet_lidi ["Horní Lhota"] = 350; Obecně můţe být asociativní pole uţitečné v případě, kdy budete chtít rozlišovat prvky podle něčeho jiného neţ podle čísel. 416

25 Index pole můţeme vynechat a PHP jej dosadí za nás. Také můţete zadat první hodnotu, od které se bude index odvíjet. Další moţnost je pouţít v PHP funkci array, která provede totéţ. $jmeno[]="petr"; $jmeno[]="pavel"; $jmeno[]="maruška" ; $jmeno[]="eva"; $jmeno[]="roman"; nebo pomocí funkce array, coţ je ještě kratší a je to naprosto rovnocenný zápis: $jmeno=array("petr", "Pavel", "Maruška", "Eva", "Roman"); Pamatujte, ţe PHP standardně čísluje pole od nuly, ne od jedničky. Aby příklad skutečně fungoval jako ten úvodní, musíte do prvního indexu zadat číslo 1. $jmeno[1]="petr"; $jmeno[]="pavel"; $jmeno[]="maruška" ; $jmeno[]="eva"; $jmeno[]="roman"; nebo $jmeno=array(1=>"petr", "Pavel", "Maruška", "Eva", "Roman"); Příklad: Z definovaného pole vypište první a poslední záznam $jmeno[]="petr"; $jmeno[]="pavel"; $jmeno[]="maruška" ; $jmeno[]="eva"; $jmeno[]="roman"; echo $fronta[0]; <br /> echo $fronta[4]; 417

26 18.9 Výrazy, konstanty Výrazem je v PHP cokoliv, co má nějakou hodnotu. Konstanta je v PHP něco jako proměnná, ale během programu svou hodnotu nemění. Konstanty se definují pomocí funkce define a zapisují se velkými písmeny. define ("BROWSER", "IE 9"); define ("OS", "Windows 7"); echo "Váš browser je ".BROWSER." a Váš systém je ".OS; Inkrementace, dekrementace, postinkrementace, preinkrementace Inkrementace při inkrementaci se hodnota proměnné zvýší o 1. $a = 10; $b = ++$a; echo $b; Dekrementace při dekrementaci se sníţí hodnota proměnné o 1. $a = 10; $b = --$a; echo $b; Postinkrementace $a = 10; $b = $a++; echo $a. "<br />"; echo $b; Při postinkrementaci se v tomto příkladu výraz $a++ nejdříve vyhodnotí, jeho hodnota se přiřadí proměnné b. Následně je inkrementována proměnná a. Proměnná a má hodnotu 11 a proměnná b má hodnotu 10. Preinkrementace $a = 10; $b =++ $a; echo $a. "<br />"; echo $b; 418

27 Při preinkrementaci se v tomto příkladu nejdříve inkrementuje proměnná a. Následně je výraz ++$a vyhodnocen - jeho hodnota přiřazena proměnné b. Proměnná a má hodnotu 11 a proměnná b má hodnotu Příkazy Příkazy jsou kostrou celého programu. Udělují programům základní schopnost rozhodování, která je zapotřebí pro většinu početních úloh Příkazy pro větvení programů Tyto příkazy rozhodují o tom jaký blok kódu se provede a za jakých podmínek. V PHP jsou dvě podmíněné konstrukce. První je if...elseif...else a druhá switch...case. Příkaz if // Jan se vypíše, jen pokud bude $jmeno Jan if ($jmeno == "Jan") echo ("Jan"); // Jméno a příjmení se vypíše pouze tehdy, pokud jméno bude Jan a příjmení Novák if ($jmeno == "Jan" AND $prijemni == "Novák") { echo ("Jan"); echo ("Novák"); } PHP také umoţňuje pouţívat rozvětvené podmínky. Pomocí klíčového slova else můţete určit blok kódu, který se provede, pokud je daná podmínka nepravdivá. Také máte klíčové slovo elseif, který vám v případě nesplnění hlavní podmínky umoţňuje testovat alternativní podmínky. //testuje se zadané číslo v proměnné $i $i=0; if ($i < 0) { echo ("Záporné"); } elseif ($i == "0") { echo ("Nula"); } else { echo ("Kladné"); } 419

28 Příkaz switch Příkaz switch se pouţívá, pokud testujeme jednu proměnnou s více moţnými hodnotami. php //testuje se jaký řetězec je v proměnné $stat $stat="sk"; switch ($stat) { case "cz": echo "Česká republika"; break; case "sk": echo "Slovenská republika"; break; default: echo "Odjinud"; } Příkaz switch porovnává hodnotu proměnné $stat s kaţdou hodnotou klauzule case. Pokud nalezne odpovídající hodnotu, provede příkazy spojené s touto volbou aţ do příkazu break Cykly Cykly nám umoţňují provádět určitou část kódu opakovaně aţ do nastaveného počtu nebo splnění podmínky. V PHP jsou dva typy cyklů. While - provede znovu daný kód jen v případě ţe je splněna daná podmínka. For tomuto cyklu dopředu zadáte, kolikrát má daný kód provést. Příkaz while Výpis čísel od 1 do 10 $i = 0; while ($i <= 9) { $i++; echo $i; } Výpis čísel od 1 do 10 do tabulky <table> <tr><td>číslo</td></tr> $i=1; while ($i<=10) { echo "<tr><td>".$i."</td></tr>\n"; $i++; } </table> 420

29 Nekonečné smyčky Při nepozornosti můţe vzniknout nekonečná smyčka program nikdy nebude mít konec. Na serveru bývá většinou zapnuta ochrana a program se po 30 sekundách násilně ukončí. V opačném případě by mohlo dojít k zahlcení serveru. $i=1; while ($i=1) $i++; echo $i; Příkaz for <table> <tr><td>číslo</td></tr> for ($i=1; $i<=10; $i++) echo "<tr><td>".$i."</td></tr>"; </table> Vnořené smyčky (malá násobilka) <table> for ($radek=1; $radek<=10; $radek++): echo "<tr>"; for ($sloupec=1; $sloupec<=10; $sloupec++): echo "<td>".$radek*$sloupec."</td>"; endfor; echo "</tr>"; endfor; </table> Příkazy break a continue Smyčky nemusejí probíhat vţdy řádně celým cyklem. Někdy můţe být výhodné provádění cyklu přerušit. K tomu slouţí příkaz break. break Úprava předchozího příkladu tak, aby vracel pouze čísla do padesáti. <table> for ($radek=1; $radek<=10; $radek++): echo "<tr>"; 421

30 echo "</tr>"; endfor; </table> Continue for ($sloupec=1; $sloupec<=10; $sloupec++): if ($radek * $sloupec>50) break; // to je ten přidaný řádek echo "<td>".$radek*$sloupec."</td>"; endfor; Úprava předchozího příkladu tak, aby vracel pouze čísla větší neţ padesát. <table> for ($radek=1; $radek<=10; $radek++): echo "<tr>"; for ($sloupec=1; $sloupec<=10; $sloupec++): if ($radek * $sloupec<50) continue; // to je ten přidaný řádek echo "<td>".$radek*$sloupec."</td>"; endfor; echo "</tr>"; endfor; </table> Funkce (procedury) Funkce jsou v PHP nezbytným programovacím prostředkem. Procedury i funkce se v PHP definují klíčovým slovem function. Procedura Procedura je jednoduše řečeno kus kódu, který se můţe volat samostatně. Většinou se do procedury umisťují ty části kódu, které se v programu opakují nebo se procedury pouţívají pro větší přehlednost. function tabulka() { <table> <tr><td>1</td><td>2</td></tr> <tr><td>3</td><td>4</td></tr> </table> } 422

31 Pouţití procedury tabulka echo "Toto je první tabulka"; tabulka(); echo "Toto je druhá tabulka"; tabulka(); Funkce function dvaplusdva() { return 2+2; } Výraz, který je uveden za return se vrátí jako výsledná hodnota a provádění funkce tím končí. cokoli, co je uvedeno jako příkaz za klíčovým slovem return uţ se neprovede. Funkce můţe mít více vstupních parametrů. Ty se pak oddělují čárkou. Funkce v PHP mohou být rekurzivní. To znamená, ţe funkce můţe volat sebe samu. Funkce nemůţe vracet více neţ jeden výstupní parametr. Ale můţe vracet pole, takţe se to dá obejít. Jedna uţivatelská funkce můţe volat jinou. Na pořadí, v jakém jsou uvedeny ve skriptu, přitom nezáleţí Vkládání souborů Funkce pro vkládání souborů pouţijete při vkládání částí kódu do webové stránky - záhlaví, zápatí, kontaktní informace, vloţení počítadla, vloţení často pouţívaných částí kódu apod. Výhodou je úspora místa ne serveru a daleko snazší úprava určité funkce nebo části opakujícího se kódu. K tomuto účelu se pouţívají příkazy require a include. Příkaz zadaný soubor vloţí na místo, kde se tento příkaz nachází. require "soubor.php"; // poţadovat require ("soubor.php"); // volání ve tvaru fce include "soubor.php"; // vloţit include ("soubor.php"); // volání ve tvaru fce require - při neexistenci souboru se skript ukončí s fatální chybou include - při neexistenci souboru zahlásí varování a pokračuje dále U vkládaných souborů můţeme pouţít libovolnou příponu. Často se pouţívá přípona.inc. Tím lze bezpečně poznat, ţe daný soubor je určen pro vloţení do jiného souboru a ne pro přímé volání. Tento způsob znamená však velké bezpečnostní riziko. Soubory s příponou.inc nejsou zpracovány serverem, takţe kdokoliv, kdo zná jeho jméno si můţe zobrazit celý text. Pouţívejte standardní přípony pro php. 423

32 Ukázka webové stránky HTML tvořící webovou stránku <!-- začátek hlavičky --> //xml version="1.0" encoding="utf-8" <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " <html xmlns=" xml:lang="cs" lang="cs"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="description" content="... obsah dokumentu.." /> <meta name="author" content="vaše jméno" /> <title>úvod do PHP</title> <link rel="stylesheet" href="styl.css" type="text/css" /> </head> <!-- konec hlavičky --> <!-- začátek úvodu --> <body> <div style="background-color: #FFFF00"> <h2 align="center">střední odborná škola veterinární a mechanizační a zahradnická<br />a Jazyková škola s právem státní jazykové zkoušky</h2> </div> <div><p>rudolfovská 92, České Budějovice, telefon: , <a href="mailto:skola@soscb.cz">skola@soscb.cz</a></p><br /><hr /> </div> <!-- konec úvodu --> <!-- začátek obsahu --> <p><b><a href=" MECHANIZACE A SLUŢBY</a></b></p> <p><b><a href=" VETERINÁŘSTVÍ</a></b> <p><b><a href=" ZAHRADNICTVÍ</a></b> <!-- konec obsahu --> <!-- začátek patičky --> <p> </p><hr /><p><b>ič:</b> <br /><b>dič:</b> CZ </p> </body> </html> <!-- konec patičky --> 424

1 Základy algoritmizace a programování. 1.1 Algoritmus. 1.1.1 Možnosti zápisu algoritmů. Základy algoritmizace a programování

1 Základy algoritmizace a programování. 1.1 Algoritmus. 1.1.1 Možnosti zápisu algoritmů. Základy algoritmizace a programování 1 Základy algoritmizace a programování 1.1 Algoritmus Algoritmus je posloupnost operací, která řeší daný úkol v konečném počtu kroků. Je to přesný postup, který je potřeba k vykonání určité činnosti. Jinak

Více

1 Základy programování v PHP

1 Základy programování v PHP 1 Základy programování v PHP Programovací jazyk PHP (Hypertext preprocessor) je skriptovací jazyk, který běží na straně serveru. Server posílá do vašeho počítače pouze výsledky. Používá se pro tvorbu webových

Více

Základy programování a algoritmizace

Základy programování a algoritmizace Základy programování a algoritmizace Publikace vznikla v rámci projektu OPVK Vyškolený pedagog záruka kvalitní výuky na Střední odborné škole veterinární, mechanizační a zahradnické a Jazykové škole s

Více

Algoritmizace. 1. Úvod. Algoritmus

Algoritmizace. 1. Úvod. Algoritmus 1. Úvod Algoritmizace V dnešní době již počítače pronikly snad do všech oblastí lidské činnosti, využívají se k řešení nejrůznějších úkolů. Postup, který je v počítači prováděn nějakým programem se nazývá

Více

Výukový materiál zpracován v rámci projektu EU peníze školám

Výukový materiál zpracován v rámci projektu EU peníze školám Výukový materiál zpracován v rámci projektu EU peníze školám Registrační číslo projektu: CZ. 1.07/1.5.00/34.0637 Šablona III/2 Název VY_32_INOVACE_39_Algoritmizace_teorie Název školy Základní škola a Střední

Více

Masarykova střední škola zemědělská a Vyšší odborná škola, Opava, příspěvková organizace

Masarykova střední škola zemědělská a Vyšší odborná škola, Opava, příspěvková organizace Masarykova střední škola zemědělská a Vyšší odborná škola, Opava, příspěvková organizace Číslo projektu Číslo materiálu Autor Průřezové téma Předmět CZ.1.07/1.5.00/34.0565 VY_32_INOVACE_284_Programovací_jazyky

Více

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI EVROPSKÝ SOCIÁLNÍ FOND Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Úvod do PHP PHP Personal Home Page Hypertext Preprocessor jazyk na tvorbu dokumentů přípona: *.php skript je součást HTML stránky!

Více

Vstupní požadavky, doporučení a metodické pokyny

Vstupní požadavky, doporučení a metodické pokyny Název modulu: Základy PHP Označení: C9 Stručná charakteristika modulu Modul je orientován na tvorbu dynamických stánek aktualizovaných podle kontextu volání. Jazyk PHP umožňuje velmi jednoduchým způsobem

Více

Algoritmy a algoritmizace

Algoritmy a algoritmizace Otázka 21 Algoritmy a algoritmizace Počítačové programy (neboli software) umožňují počítačům, aby přestaly být pouhou stavebnicí elektronických a jiných součástek a staly se pomocníkem v mnoha lidských

Více

PHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě

PHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě PHP PHP původně znamenalo Personal Home Page a vzniklo v roce 1996, od té doby prošlo velkými změnami a nyní tato zkratka znamená Hypertext Preprocessor. PHP je skriptovací programovací jazyk, určený především

Více

ALGORITMIZACE Příklady ze života, větvení, cykly

ALGORITMIZACE Příklady ze života, větvení, cykly ALGORITMIZACE Příklady ze života, větvení, cykly Cíl kapitoly: Uvedení do problematiky algoritmizace Klíčové pojmy: Algoritmus, Vlastnosti správného algoritmu, Možnosti zápisu algoritmu, Vývojový diagram,

Více

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: 1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.

Více

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost Programování Algoritmus návod na vykonání činnosti, který nás od (měnitelných) vstupních dat přivede v konečném čase k výsledku přesně definovaná konečná posloupnost činností vedoucích k výsledku (postup,

Více

PHP - úvod. Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky.

PHP - úvod. Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky. PHP - úvod Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky. Klíčové pojmy: PHP, webový prohlížeč, HTTP, FTP Základní pojmy služba WWW = 1990 první prototyp serveru, od roku 1994

Více

Programovací jazyk Pascal

Programovací jazyk Pascal Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce

Více

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7 Pascal Katedra aplikované kybernetiky Ing. Miroslav Vavroušek Verze 7 Proměnné Proměnná uchovává nějakou informaci potřebnou pro práci programu. Má ve svém oboru platnosti unikátní jméno. (Připadne, musí

Více

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Maturitní otázky z předmětu PROGRAMOVÁNÍ Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

Více

PHP. Čtvrtek 8. září. Čtvrtek 15. září. Anonymní test znalostí

PHP. Čtvrtek 8. září. Čtvrtek 15. září. Anonymní test znalostí Čtvrtek 8. září Anonymní test znalostí Čtvrtek 15. září PHP je programovací jazyk, který pracuje na straně serveru. S PHP můžete ukládat a měnit data webových stránek. PHP původně znamená Personal Home

Více

Lekce 01 Úvod do algoritmizace

Lekce 01 Úvod do algoritmizace Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů Lekce 01 Úvod do algoritmizace Tento projekt CZ.1.07/1.3.12/04.0006 je spolufinancován Evropským sociálním

Více

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: 1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.

Více

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu: Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury

Více

Algoritmus. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem.

Algoritmus. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem. Algoritmus Algoritmus je schematický postup pro řešení určitého druhu problémů, který je prováděn pomocí konečného množství přesně definovaných kroků. nebo Algoritmus lze definovat jako jednoznačně určenou

Více

Základy algoritmizace

Základy algoritmizace Algoritmus Toto je sice na první pohled pravdivá, ale při bližším prozkoumání nepřesná definice. Například některé matematické postupy by této definici vyhovovaly, ale nejsou algoritmy. Přesné znění definice

Více

Algoritmizace. Obrázek 1: Přeložení programu překladačem

Algoritmizace. Obrázek 1: Přeložení programu překladačem Algoritmizace V každém okamžiku ví procesor počítače přesně, co má vykonat. Pojmem procesor se v souvislosti s algoritmy označuje objekt (např. stroj i člověk), který vykonává činnost popisovanou algoritmem.

Více

VISUAL BASIC. Přehled témat

VISUAL BASIC. Přehled témat VISUAL BASIC Přehled témat 1 ÚVOD DO PROGRAMOVÁNÍ Co je to program? Kuchařský předpis, scénář k filmu,... Program posloupnost instrukcí Běh programu: postupné plnění instrukcí zpracovávání vstupních dat

Více

6 Příkazy řízení toku

6 Příkazy řízení toku 6 Příkazy řízení toku Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost příkazům pro řízení toku programu. Pro všechny tyto základní

Více

PHP tutoriál (základy PHP snadno a rychle)

PHP tutoriál (základy PHP snadno a rychle) PHP tutoriál (základy PHP snadno a rychle) Druhá, vylepšená offline verze. Připravil Štěpán Mátl, http://khamos.wz.cz Chceš se naučit základy PHP? V tom případě si prostuduj tento rychlý průvodce. Nejdříve

Více

Programování v jazyce JavaScript

Programování v jazyce JavaScript Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Operátory a příkazy BI-JSC Evropský sociální fond

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false Logické operace Datový typ bool může nabýt hodnot: o true o false Relační operátory pravda, 1, nepravda, 0, hodnoty všech primitivních datových typů (int, double ) jsou uspořádané lze je porovnávat binární

Více

Algoritmizace- úvod. Ing. Tomáš Otáhal

Algoritmizace- úvod. Ing. Tomáš Otáhal Algoritmizace- úvod Ing. Tomáš táhal Historie 9. století perský matematik a astronom Mohammed Al-Chorezím v latinském přepise příjmení= algoritmus Nejstarší algoritmus Euklides řecký matematik, 4. století

Více

WSH Windows Script Hosting. OSY 2 Přednáška číslo 2 opravená verze z 15.10.2007

WSH Windows Script Hosting. OSY 2 Přednáška číslo 2 opravená verze z 15.10.2007 WSH Windows Script Hosting OSY 2 Přednáška číslo 2 opravená verze z 15.10.2007 Co je skript? Skriptování nástroj pro správu systému a automatizaci úloh Umožňuje psát skripty jednoduché interpretované programové

Více

ALGORITMIZACE A PROGRAMOVÁNÍ

ALGORITMIZACE A PROGRAMOVÁNÍ Metodický list č. 1 Algoritmus a jeho implementace počítačovým programem Základním cílem tohoto tematického celku je vysvětlení pojmů algoritmus a programová implementace algoritmu. Dále je cílem seznámení

Více

Inovace bakalářského studijního oboru Aplikovaná chemie http://aplchem.upol.cz

Inovace bakalářského studijního oboru Aplikovaná chemie http://aplchem.upol.cz Inovace bakalářského studijního oboru Aplikovaná chemie http://aplchem.upol.cz CZ.1.07/2.2.00/15.0247 Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. Tvorba

Více

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5 Obsah Obsah 1 Programovací jazyk Pascal 1 1.1 Struktura programu v Pascalu.................... 1 2 Proměnné 2 2.1 Vstup a výstup............................ 3 3 Operátory a některé matematické funkce 5

Více

Řídicí struktury. alg3 1

Řídicí struktury. alg3 1 Řídicí struktury Řídicí struktura je programová konstrukce, která se skládá z dílčích příkazů a předepisuje pro ně způsob provedení Tři druhy řídicích struktur: posloupnost, předepisující postupné provedení

Více

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1 24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE AUTOR DOKUMENTU: MGR. MARTINA SUKOVÁ DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 UČIVO: STUDIJNÍ OBOR: PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) INFORMAČNÍ TECHNOLOGIE

Více

8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek

8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek 8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek 1/41 Základní příkazy Všechny příkazy se píšou malými písmeny! Za většinou příkazů musí být středník (;)! 2/41 Základní příkazy

Více

Identifikátor materiálu: ICT-4-01

Identifikátor materiálu: ICT-4-01 Identifikátor materiálu: ICT-4-01 Předmět Téma sady Informační a komunikační technologie Téma materiálu Počítačové algoritmy Autor Ing. Bohuslav Nepovím Anotace Student si procvičí / osvojí Počítačové

Více

Základy algoritmizace a programování

Základy algoritmizace a programování Základy algoritmizace a programování Přednáška 1 Olga Majlingová Katedra matematiky, ČVUT v Praze 19. září 2011 Obsah Úvodní informace 1 Úvodní informace 2 3 4 Doporučená literatura web: http://marian.fsik.cvut.cz/zapg

Více

Základy algoritmizace a programování

Základy algoritmizace a programování Základy algoritmizace a programování Přednáška 1 Olga Majlingová Katedra matematiky, ČVUT v Praze 21. září 2009 Obsah Úvodní informace 1 Úvodní informace 2 3 4 Organizace předmětu Přednášky 1. 5. Základní

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech

Více

1 Webový server, instalace PHP a MySQL 13

1 Webový server, instalace PHP a MySQL 13 Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského

Více

K práci budeme využívat souborového manažeru Unreal Commander alespoň si ho procvičíme

K práci budeme využívat souborového manažeru Unreal Commander alespoň si ho procvičíme PHP je programovací jazyk, který pracuje na straně serveru. S PHP můžete ukládat a měnit data webových stránek. PHP původně znamená Personal Home Page a vzniklo v roce 1996, od té doby prošlo velkými změnami

Více

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky Vyučovací hodina 1vyučovací hodina: Opakování z minulé hodiny Nová látka Procvičení nové látky Shrnutí 5 min 20 min 15 min 5 min 2vyučovací hodiny: Opakování z minulé hodiny Nová látka Procvičení nové

Více

6. Příkazy a řídící struktury v Javě

6. Příkazy a řídící struktury v Javě 6. Příkazy a řídící struktury v Javě Příkazy v Javě Příkazy v Javě Řídicí příkazy (větvení, cykly) Přiřazovací příkaz = Řízení toku programu (větvení, cykly) Volání metody Návrat z metody - příkaz return

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Řídicí struktury jazyka Java Struktura programu Příkazy jazyka Blok příkazů Logické příkazy Ternární logický operátor Verze pro akademický rok 2012/2013 1 Struktura programu

Více

ANOTACE vytvořených/inovovaných materiálů

ANOTACE vytvořených/inovovaných materiálů ANOTACE vytvořených/inovovaných materiálů Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Formát Druh učebního materiálu Druh interaktivity CZ.1.07/1.5.00/34.0722 III/2 Inovace a

Více

Bottle -- příklad. Databáze. Testovací data. id Jedinečný identifikátor řádku: Bude typu INT s AUTO_INCREMENT a nastavíme ho jako primární klíč

Bottle -- příklad. Databáze. Testovací data. id Jedinečný identifikátor řádku: Bude typu INT s AUTO_INCREMENT a nastavíme ho jako primární klíč Bottle -- příklad V tomto příkladu se pokusíme vytvořit malou aplikaci umožňující psát jednoduché poznámky. Databáze Nejprve je třeba vytvořit v databázovém serveru uživatele (pokud už není vytvořen) a

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Typy Základní (primitivní) datové typy Deklarace Verze pro akademický rok 2012/2013 1 Typy v jazyce Java Základní datové typy (primitivní datové typy) Celočíselné byte, short,

Více

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu } 5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu

Více

Pracovní listy - programování (algoritmy v jazyce Visual Basic) Algoritmus

Pracovní listy - programování (algoritmy v jazyce Visual Basic) Algoritmus Pracovní listy - programování (algoritmy v jazyce Visual Basic) Předmět: Seminář z informatiky a výpočetní techniky Třída: 3. a 4. ročník vyššího stupně gymnázia Algoritmus Zadání v jazyce českém: 1. Je

Více

Střední odborná škola a Střední odborné učiliště, Hořovice

Střední odborná škola a Střední odborné učiliště, Hořovice Kód DUM : VY_32_INOVACE_DYN.1.17 Název materiálu: Anotace Autor Jazyk Očekávaný výstup 17 PHP- komplexní úloha Výpočet obsahu trojúhelníku pomocí Heronova vzorce DUM prohloubí dovednosti žáků v postupu

Více

9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h>

9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h> 9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include int main(void) { int dcislo, kolikbcislic = 0, mezivysledek = 0, i; int vysledek[1000]; printf("zadejte

Více

Programování v jazyce JavaScript

Programování v jazyce JavaScript Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Syntaxe 1. část BI-JSC Evropský sociální fond

Více

Operátory pro maticové operace (operace s celými maticemi) * násobení maticové Pro čísla platí: 2*2

Operátory pro maticové operace (operace s celými maticemi) * násobení maticové Pro čísla platí: 2*2 * násobení maticové Pro čísla platí: Pro matice - násobení inverzní maticí inv inverzní matice A -1 k dané matici A je taková matice, která po vynásobení s původní maticí dá jednotkovou matici. Inverzní

Více

HTML - Úvod. Zpracoval: Petr Lasák

HTML - Úvod. Zpracoval: Petr Lasák HTML - Úvod Zpracoval: Petr Lasák Je značkovací jazyk, popisující obsah HTML stránek Je z rodiny SGML jazyků, jako např. XML, DOCX, XLSX Nejedná se o programovací ale značkovací jazyk Dynamičnost dodávají

Více

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b Výrazy a operátory i = 2 i = 2; to je výraz to je příkaz 4. Operátory Unární - unární a unární + Např.: +5-5 -8.345 -a +b - unární ++ - inkrement - zvýší hodnotu proměnné o 1 - unární -- - dekrement -

Více

Tabulkový procesor. Základní rysy

Tabulkový procesor. Základní rysy Tabulkový procesor Tabulkový procesor je počítačový program zpracovávající data uložená v buňkách tabulky. Program umožňuje použití vzorců pro práci s daty a zobrazuje výsledné hodnoty podle vstupních

Více

Programování. Bc. Veronika Tomsová

Programování. Bc. Veronika Tomsová Programování Bc. Veronika Tomsová Regulární výrazy Regulární výrazy slouží k porovnání a zpracovaní textu PHP podporuje syntaxi POSIX-Extended Regulární výrazy jsou velice vhodné například k ověření emailové

Více

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí) Programovací jazyky Programovací jazyky nižší assembler (jazyk symbolických instrukcí) vyšší imperativní (procedurální) Pascal, C/C++, Java, Basic, Python, php neimperativní (neprocedurální) Lisp, Prolog

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Algoritmus Daniela Szturcová Tento

Více

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina 5a. Makra Visual Basic pro Microsoft Escel Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina Cyklické odkazy a iterativní výpočty Zde bude stránka o cyklických odkazech a iteracích.

Více

PSK3-9. Základy skriptování. Hlavička

PSK3-9. Základy skriptování. Hlavička PSK3-9 Název školy: Autor: Anotace: Vyšší odborná škola a Střední průmyslová škola, Božetěchova 3 Ing. Marek Nožka Základy skriptování v unixovém shellu Vzdělávací oblast: Informační a komunikační technologie

Více

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií 1 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 12. října 2009 Organizace výuky Přednášky Teoretické základy dle normy jazyka C Cvičení Praktické úlohy odpřednášené látky Prostřední

Více

Úvod do programování. Lekce 1

Úvod do programování. Lekce 1 Úvod do programování Lekce 1 Základní pojmy vytvoření spustitelného kódu editor - psaní zdrojových souborů preprocesor - zpracování zdrojových souborů (vypuštění komentářů atd.) kompilátor (compiler) -

Více

VISUAL BASIC. Práce se soubory

VISUAL BASIC. Práce se soubory VISUAL BASIC Práce se soubory Práce se soubory 1/2 2 Vstupní data pro programy bývají uloženy do souborů Vstupy pro výpočet, nastavení vzhledu aplikace Výsledky práce programu je potřeba uchovat uložit

Více

Zápis programu v jazyce C#

Zápis programu v jazyce C# Zápis programu v jazyce C# Základní syntaktická pravidla C# = case sensitive jazyk rozlišuje velikost písmen Tzv. bílé znaky (Enter, mezera, tab ) ve ZK překladač ignoruje každý příkaz končí ; oddělovač

Více

Program a životní cyklus programu

Program a životní cyklus programu Program a životní cyklus programu Program algoritmus zapsaný formálně, srozumitelně pro počítač program se skládá z elementárních kroků Elementární kroky mohou být: instrukce operačního kódu počítače příkazy

Více

Databázové aplikace pro internetové prostředí. 01 - PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku

Databázové aplikace pro internetové prostředí. 01 - PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku Databázové aplikace pro internetové prostředí 01 - PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku Projekt: Inovace výuky prostřednictvím ICT Registrační číslo: CZ.1.07/1.5.00/34.250

Více

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání Čtvrtek 3. listopadu Makra v Excelu Obecná definice makra: Podle definice je makro strukturovanou definicí jedné nebo několika akcí, které chceme, aby MS Excel vykonal jako odezvu na nějakou námi definovanou

Více

ALGORITMIZACE. Výukový materiál pro tercii osmiletého gymnázia

ALGORITMIZACE. Výukový materiál pro tercii osmiletého gymnázia ALGORITMIZACE Výukový materiál pro tercii osmiletého gymnázia Možnosti zápisu algoritmů 1. Slovní vyjádření 2. Matematický zápis 3. Rozhodovací tabulky 4. Vývojové diagramy 5. Počítačové programy Slovní

Více

Sada 1 - Základy programování

Sada 1 - Základy programování S třední škola stavební Jihlava Sada 1 - Základy programování 07. Základní příkazy vstup a výstup hodnot Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284

Více

Algoritmy a datové struktury

Algoritmy a datové struktury Algoritmy a datové struktury 1 / 34 Obsah přednášky Základní řídící struktury posloupnost příkazů podmínka cyklus s podmínkou na začátku cyklus s podmínkou na konci cyklus s pevným počtem opakování Jednoduchá

Více

2 Strukturované datové typy 2 2.1 Pole... 2 2.2 Záznam... 3 2.3 Množina... 4

2 Strukturované datové typy 2 2.1 Pole... 2 2.2 Záznam... 3 2.3 Množina... 4 Obsah Obsah 1 Jednoduché datové typy 1 2 Strukturované datové typy 2 2.1 Pole.................................. 2 2.2 Záznam................................ 3 2.3 Množina................................

Více

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody 4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina Cyklické odkazy a iterativní výpočty

Více

Programování v C++ Úplnej úvod. Peta (maj@arcig.cz, SPR AG 2008-9)

Programování v C++ Úplnej úvod. Peta (maj@arcig.cz, SPR AG 2008-9) Programování v C++ Úplnej úvod Co se naučíte? tak samozřejmě C++, s důrazem na: dynamické datové struktury Objektově Orientované Programování STL (standardní knihovna šablon) vytváření vlastních šablon

Více

3 Co je algoritmus? 2 3.1 Trocha historie... 2 3.2 Definice algoritmu... 3 3.3 Vlastnosti algoritmu... 3

3 Co je algoritmus? 2 3.1 Trocha historie... 2 3.2 Definice algoritmu... 3 3.3 Vlastnosti algoritmu... 3 Obsah Obsah 1 Program přednášek 1 2 Podmínky zápočtu 2 3 Co je algoritmus? 2 3.1 Trocha historie............................ 2 3.2 Definice algoritmu.......................... 3 3.3 Vlastnosti algoritmu.........................

Více

1. Webový server, instalace PHP a MySQL 13

1. Webový server, instalace PHP a MySQL 13 Úvod 11 1. Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského

Více

První kapitola úvod do problematiky

První kapitola úvod do problematiky První kapitola úvod do problematiky Co je to Flex Adobe Flex je ActionSript (AS) framework pro tvorbu Rich Internet Aplications (RIA), tedy knihovna AS tříd pro Flash. Flex používáme k vytvoření SWF souboru

Více

Programy na PODMÍNĚNÝ příkaz IF a CASE

Programy na PODMÍNĚNÝ příkaz IF a CASE Vstupy a výstupy budou vždy upraveny tak, aby bylo zřejmé, co zadáváme a co se zobrazuje. Není-li určeno, zadáváme přirozená čísla. Je-li to možné, používej generátor náhodných čísel vysvětli, co a jak

Více

Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky -

Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky - Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky - Preprocesor je možné ovládat pomocí příkazů - řádky začínající

Více

Algoritmus. Cílem kapitoly je seznámit žáky se základy algoritmu, s jeho tvorbou a způsoby zápisu.

Algoritmus. Cílem kapitoly je seznámit žáky se základy algoritmu, s jeho tvorbou a způsoby zápisu. Algoritmus Cílem kapitoly je seznámit žáky se základy algoritmu, s jeho tvorbou a způsoby zápisu. Klíčové pojmy: Algoritmus, vlastnosti algoritmu, tvorba algoritmu, vývojový diagram, strukturogram Algoritmus

Více

Jazyk C Program v jazyku C má následující strukturu: konstanty nebo proměnné musí Jednoduché datové typy: Strukturované datové typy Výrazy operátory

Jazyk C Program v jazyku C má následující strukturu: konstanty nebo proměnné musí Jednoduché datové typy: Strukturované datové typy Výrazy operátory Jazyk C Program v jazyku C má následující strukturu: Direktivy procesoru Globální definice (platné a známé v celém programu) Funkce Hlavička funkce Tělo funkce je uzavřeno mezi složené závorky { Lokální

Více

Stručný návod k programu Octave

Stručný návod k programu Octave Stručný návod k programu Octave Octave je interaktivní program vhodný pro technické výpočty. Je nápadně podobný programu MATLAB, na rozdíl od něho je zcela zadarmo. Jeho domovská vebová stránka je http://www.octave.org/,

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: CZ.1.07/1.5.00/34.0410 Číslo šablony: 1 Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek:

Více

Vývojové diagramy 1/7

Vývojové diagramy 1/7 Vývojové diagramy 1/7 2 Vývojové diagramy Vývojový diagram je symbolický algoritmický jazyk, který se používá pro názorné zobrazení algoritmu zpracování informací a případnou stručnou publikaci programů.

Více

3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti

3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti 3. přednáška nalezení největšího prvku, druhého nejvyššího prvku, algoritmus shozeného praporku. Algoritmizace

Více

Vícerozměrná pole. Inicializace pole

Vícerozměrná pole. Inicializace pole Vícerozměrná pole Aby to nebylo tak úplně jednoduché, pole nemusí mít jen jeden index. Představte si například, že byste v PHP chtěli pomocí pole popsat postavení figurek na šachovnici před zahájením šachové

Více

Proměnná. Datový typ. IAJCE Cvičení č. 3. Pojmenované místo v paměti sloužící pro uložení hodnoty.

Proměnná. Datový typ. IAJCE Cvičení č. 3. Pojmenované místo v paměti sloužící pro uložení hodnoty. Proměnná Pojmenované místo v paměti sloužící pro uložení hodnoty. K pojmenování můžeme použít kombinace alfanumerických znaků, včetně diakritiky a podtržítka Rozlišují se velká malá písmena Název proměnné

Více

Formátové specifikace formátovací řetězce

Formátové specifikace formátovací řetězce 27.2.2007 Formátové specifikace formátovací řetězce - je to posloupnost podle které překladač pozná jaký formát má výstup mít - posloupnosti začínají znakem % a určující formát vstupu/výstupu - pokud chcete

Více

5 Přehled operátorů, příkazy, přetypování

5 Přehled operátorů, příkazy, přetypování 5 Přehled operátorů, příkazy, přetypování Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně budou uvedeny detaily týkající se operátorů. Doba nutná k nastudování

Více

Sada 1 - Základy programování

Sada 1 - Základy programování S třední škola stavební Jihlava Sada 1 - Základy programování 04. Datové typy, operace, logické operátory Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284

Více

Operační systémy. Cvičení 3: Programování v C pod Unixem

Operační systémy. Cvičení 3: Programování v C pod Unixem Operační systémy Cvičení 3: Programování v C pod Unixem 1 Obsah cvičení Editace zdrojového kódu Překlad zdrojového kódu Základní datové typy, struktura, ukazatel, pole Načtení vstupních dat Poznámka: uvedené

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Algoritmus Daniela Szturcová Tento

Více

PROGRAMOVÁNÍ V SHELLU

PROGRAMOVÁNÍ V SHELLU PROGRAMOVÁNÍ V SHELLU Prostředí, jazyk, zdrojový kód chceme-li posloupnost jistých příkazů používat opakovaně, případně z různých míst adresářové struktury, můžeme tuto posloupnost uložit souboru, který

Více

Pro označení disku se používají písmena velké abecedy, za nimiž následuje dvojtečka.

Pro označení disku se používají písmena velké abecedy, za nimiž následuje dvojtečka. 1 Disky, adresáře (složky) a soubory Disky Pro označení disku se používají písmena velké abecedy, za nimiž následuje dvojtečka. A:, B: C:, D:, E:, F: až Z: - označení disketových mechanik - ostatní disky

Více

HTML Hypertext Markup Language

HTML Hypertext Markup Language HTML Hypertext Markup Language je jazyk určený na publikování a distribuci dokumentů na Webu velmi jednoduchý jazyk používá ho mnoho uživatelů má výkonné prostředky (příkazy) k formátování dokumentů (různé

Více

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí) Programovací jazyky Programovací jazyky nižší assembler (jazyk symbolických instrukcí) vyšší imperativní (procedurální) Pascal, C/C++, Java, Basic, Python, php neimperativní (neprocedurální) Lisp, Prolog

Více