PROGRAMOVÁNÍ. Úvod. BASIC - Co běželo na osmibitech

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

Download "PROGRAMOVÁNÍ. Úvod. BASIC - Co běželo na osmibitech"

Transkript

1 PROGRAMOVÁNÍ Úvod 1. Poněkud zastaralejší programovací jazyk. Byl vyvinut v roce 1964 v Darthmouth College v USA. Název vznikl zkratkou Beginners All-purpose Symbolic Instruction Code, což víceméně znamená: Pro začátečníky určený víceúčelový programovací prostředek. Basic nemá pevně danou normu - existuje mnoho "typů" (Basic-G, QBasic, Visual Basic, PDS,). Další vlastností Basicu je jeho vhodnost pro krátké prográmky, ovšem píšete-li něco většího, zaručeně se ve zdrojáku ztratíte. Je to proto, že nemá moc velké formální požadavky - nemusíte vůbec nic definovat (což silně ubírá na přehlednosti). 2. Budu se tu zabývat QBasicem. Pracuje v Dosu a i dnes se ještě někdy vyskytuje. Pokud chcete psát pro Windows, zajímejte se o Visual Basic, ale já osobně bych raději psal pro Windows v Delphi (možná se o tom zmíním v části o Pascalu). BASIC - Co běželo na osmibitech Mám na mysli Basicy na počítačích ZX Spectrum, IQ 151, Každý tento počítač měl trochu odlišnou verzi Basicu (liší se v detailech jako velikost písmene pro proměnné, několika příkazy, ). Z dnešního pohledu to jsou celkem hrozné jazyky: na začátku každého řádku je číslice (větší než předchozí a menší než následující - většinou jdou po desítkách). Tato číslice slouží jako návěstí pro GOTO. je zde omezený počet proměnných (286 číselných a 286 textových). Proměnné jsou ve tvaru: velké nediakritické písmeno nebo velké nediakritické písmeno s jednou číslicí (proto ten přesný počet proměnných - písmen je 26 a číslic 10 + jedno písmeno bez číslice, to je 11 * 26 = 286). K textové proměnné se ještě přidá $. vůbec se nerozlišuje mezi jednotlivými číselnými datovými typy. V podstatě jsou všechny číselné proměnné typu real, i když progamátorovi stačí i integer. chybí cykly WHILE a REPEAT, často neexistuje úplný podmíněný příkaz (tzn., že u IF.. THEN často není ELSE). Zato se zde úplně běžně pracuje s GOTO (které se ve všech normálních jazycích používá jen vyjímečně - pokud tam je), za THEN se GOTO ani nemusí psát!!! neexistuje složený příkaz (k použítí u FOR nebo IF), jeho nedostatek se nahrazuje několika příkazy GOTO. U FOR se konec zdrojového textu k opakování označuje slovem NEXT. Z tohoto všeho vyplývá, že zdrojový text v těchto Basicích je totálně nepřehledný. Už trochu složitější program je vlastně síť příkazů GOTO, kde si ani nemůžeme nějak rozumně pojmenovat návěstí (stejně tak s proměnnými). Vypadalo to asi takhle: 10 CLS 20 PRINT "Napis libovolne kladne cislo"; 30 INPUT A1 40 IF A1<0 THEN IF A1=0 THEN PRINT "Vyborne, je fakt kladne" 70 GOTO PRINT "Je zaporne, mas napsat kladne!!!" 90 GOTO PRINT "Je to nula, mas napsat kladne cislo!!!" 110 GOTO END 1

2 Tento příklad je trochu přehnaný, šel by napsat jednodušeji, ale mě nic lepšího nenapadlo. Myslím, že je docela pochopitelný i pro ty, kteří Basic neovládají. Samozřejmě u verzí s ELSE nebo se složeným príkazem by byl podstatně jednodušší. QBasic Je to jedna z nejoblíbenějších verzí Basicu. Jako jedna z mála je vybavena slušnými prostředky pro struturované programování (moderní způsob programování - využití podmínek, procedur, funkcí, cyklů,). Nemá už většinu výše popsaných problémů "osmibitových" Basiců: nemusejí se číslovat řádky (tudíž systém návěstí je obdobný Pascalu). proměnné si člověk může pojmenovat skoro jak chce (opět s podobnými pravidly jako v Pascalu). typ proměné se zde určuje podle posledního znaku. Například znak "%" značí proměnnou typu integer, znak "$" značí string, U typu single (obdoba single - real v Pascalu) se poslední znak nemusí používat. cyklů je až moc (2x víc než v Pascalu), všechny jsou řešeny podobně jako pascalovské repeat-until s pevně určeným začátkem a koncem. podobně zbytečně vysoké je i množství logických operátorů (nejen běžné AND, OR, XOR, NOT, ale i EQV - ekvivalence a IMP - implikace). složený příkaz se řeší psaním příkazů na jeden řádek s dvojtečkou mezi nimi, v podstatě ale není vůbec potřeba (u cyklů ani u podmínky IF jej nevyužijete). neexistuje většina složených datových typů (o záznamech (record) nebo dokonce objektech si můžete nechat zdát) - najdete zde jen pole (array). Stejně tak zde nejsou ukazatele. příkaz IF se zápisuje stylem IF - THEN - ELSE - ELSEIF - END IF, dá se ovšem zredukovat jen na prosté IF - THEN. QBasic podporuje i procedury a funkce, proměnné se jim mohou předávat hodnotou (u funkce - FUNCTION) i odkazem (u procedury - SUB). Kromě toho zde jsou ještě podprogramy - v podstatě blok kódu mimo hlavní program. Editor QBasicu má dost nepříjemnou vlastnost - je velmi aktivní, sám se snaží předělávat autoru program již během psaní, při opuštění řádky kurzorem se pokusí tento řádek zkompilovat, a pokud jej "nepřečte", pošle vás zpět (ale dá se to vypnout). QBasicu jsou nejbližší verze QuickBasic a PDS. QBasic je pouze interpret - tzn., že chcete-li si spustit svůj program, musíte jej vždy spustit v QBasicu, program je kompilován přímo za běhu. Doporučuji QuickBasic - je tu možnost výroby "samospustitelných" programů (lze je spustit jako obyčejný exe soubor, ale musejí mít u sebe BRun45.exe, který je za běhu kompiluje). S PDS nemám žádné zkušenosti. QBasic si můžete stáhnout ze sekce ke stážení, ale pokud vím, tento program je standardní součástí většiny verzí operačního systému MS-DOS. Vyhrabal jsem to ještě z dob, kdy jsem se Qb aktivně zabýval. Ukázka syntaxe SCREEN 8 REM nastavení grafického režimu 640x200 CLS PRINT PRINT " M E T R O N O M " SLEEP 3 k$ = INKEY$ DO PRINT "zadej pomlku (1-32)" PRINT "1=cela " PRINT "2=pulova " INPUT " ", dp% LOOP WHILE dp% > 32 2

3 DO GOSUB zaklad PLAY "O2" READ x DATA 320,260,320,380 IF x = 260 OR x = 380 THEN y = 60 IF x = 320 THEN y = 52 IF x = 380 THEN RESTORE IF x = 260 THEN PLAY "C32" IF x = 380 THEN PLAY "D32" LINE (320, 120)-(x, y), 14 CIRCLE (x, y), 10, 14 IF dp% < 1 THEN dp% = 1 IF dp% > 32 THEN dp% = 32 PLAY "P" + STR$(dp% * 2) k$ = INKEY$ IF k$ = "q" THEN dp% = dp% - 1 IF k$ = "w" THEN dp% = dp% + 1 IF k$ = "k" THEN GOTO blokk CLS LOCATE 21, 2 PRINT "pomlka - "; dp% LOCATE 22, 2 PRINT "q - zpomaleni w - zrychleni k - konec" LOOP UNTIL k$ = "k" blokk: END zaklad: LINE (250, 150)-(390, 150) LINE (250, 150)-(300, 50) LINE (390, 150)-(340, 50) LINE (300, 50)-(340, 50) LINE (320, 50)-(320, 120) LINE (265, 120)-(375, 120) REM konec zakladu,stred je (320,120) RETURN Úkolem tohoto programu je vytvořit metronom, graficky znázorněný i pravidelně pípající. Jak vidíte, zápis je poněkud nepřehledný, ačkoli se tu objevuje podprogram (zakladreturn s odkazem GOSUB). V ukázce jsou pěkně vidět cykly DO-LOOP UNTIL a DO-LOOP WHILE. V programu je návěstí blokk. Proměnné jsou typu string (k$) a single (x, y,), určitá vzláštnost jsou integery (dp%), které se obyčejně v QBasicu nepoužívají. Na začátku není potřeba vypisovat žádné formality (jako třeba výčet proměnných), zde začíná program nastavením modu obrazovky a vypsáním názvu programu (REM jsou poznámky). ASSEMBLER Asm obecně Assembler (oficiálně česky Jazyk symbolických adres) vznikl někdy na konci čtyřicátých let minulého století. Patří mezi nižší programovací jazyky (strojově orientované). To znamená, že "slova" jazyka víceméně odpovídají instrukcím strojového kódu. Jejich podoba je však samozřejmě zapamatovatelnější (alespoň pro ty, kteří umějí anglicky). Kompilátor má tedy podstatně jednodušší práci, než u vyšších jazyků (to jsou prakticky všechny ostatní). Výhodou je vysoká rychlost kompilace, a někdy i programu. Ve své době to byl docela pokrok, programátor si nemusel pamatovat (nebo zdlouhavě vyhledávat v tabulkách) spousty nezapamatovatelných znaků, ale stačilo mu napsat např. pro skok (jump) instrukci 3

4 JMP (+ parametry), pro nastavení (přesun) dat (move) MOV (+ parametry), Až o hodně později jej nahradily vyšší programovací jazyky a se dnes používa jen jako jejich doplňek. Podle mého názoru se v dnešní době "čistým" Assemblerem zabývají jen šílenci a špičkoví odborníci. Takhle například vypadá výpis textu TENHLE PROGRAM UMI NAPSAT I $ v čistém Assembleru (pro Turbo Assembler - TASM; tento soubor bude com, ne exe) : A SEGMENT ASSUME CS:A,DS:A ORG 100H START: MOV AH,9 MOV DX,OFFSET TEXT INT 21H MOV DL,'$' MOV AH,2 INT 21H INT 20H TEXT DB 'TENHLE PROGRAM',10,13,'UMI NAPSAT I $' A ENDS END START Pro srovnání v Pascalu by zdroják vypadal asi takto: writeln('tenhle PROGRAM'); writeln('umi NAPSAT I $'); end. V assembleru začíná vlastní program tím START (a končí END START). To před tím je označení segmentu a podobné inicializační "keci". MOV slouží k přiřazení hodnoty proměnné nebo registru (tedy totéž jako : = /dvojtečka + rovná se/ v Pascalu; registr je něco jako paměťový obvod v procesoru, je tedy podstatně rychlejší než RAM). INT 21H značí přerušení Dosu, přičemž vykoná službu jejíž číslo je v registru AH a ostatní instrukce potřebné k této funkci jsou v dalších registrech. Ten znak pro dolar ($) v UMI NAPSAT I $ značí ukončení řetězce, nevypíše se tedy (pokud jej vynecháte, program bude vypisovat text z paměti tak dlouho, dokud náhodou na tento znak nenarazí). K vypsání znaku $ slouží nastavení MOV DL,'$' a MOV AH,2. INT 20H je přerušení - ukončení programu. Myslím, že jako ukázka pro nezasvěcené to docela stačí. Pro programátory má assembler tedy smysl pouze jako doplněk nějakého vyššího jazyka (direktiva ASM v Pascalu; podobně v C), např. při psaní operačního systému se bez assembleru neobejdete. Vkládaný Assembler v jazyce Pascal Pokud umíte alespoň základy Pascalu, může se vám hodit direktiva ASM. V ní vkládáte do zdrojového kódu Pascalu části psané v Assembleru. Nemůžete zde však využívat všechny možnosti Asm. Týká se to zejména 32bitových registrů a speciálních příkazů pro "vyšší" procesory (využívá jen příkazy pro 8086, jde nastavit i pro 80286). Můžete však nejen urychlit program (což je pro normálního programátora dost velký problém, a na většině počítačů to stejně nepoznáte), ale hlavně ovládat myš, joystick, a mít přístup na jednotlivé porty. Podrobně jsou jednotlivé funkce popsány v systémových manuálech (porty, funkce dosu, rom-biosu,). Jeden free manuál (AtHelp) najdete v sekci Ke stažení. Další sehnatelné manuály jsou např.: SysMan, TechHelp, 4

5 Ovládání myši Jedna z věcí, kterou v praxi určitě využijete: var x,y:word; {může být i Integer} {zobrazení/vypnutí kurzoru:} mov ax,01h {získání aktuální polohy myši -souřadnice x,y} mov ax,03h mov x,cx mov y,dx {získání polohy posledního kliku tlačítka} mov ax,05h mov bx,tl mov x,cx mov y,dx end. Místo tl příjde číslo tlačítka myši. Bude-li místo tl číslo 0, značí to levé tlačítko myši, jednička odpovídá pravému a dvojka prostřednímu (existuje-li). Ovládání NumLocku Pomocí vkládaného assembleru jde také ovládat nastavení Num Locku, Caps Locku a Scroll Locku. Je to překvapivě jednoduché: var x:byte; mov al,0edh out 60h,al mov al,x out 60h,al Proměnná x je osmibitová proměnná na jejímž základě se rozsvítí diody. Zjednodušeně: je-li x=1 zapne se Scroll Lock, je-li 2 zapne se Num Lock a je-li 4 zapne se Caps Lock. Nulou se vypnou všechny. Chcete-li zapnout jejich kombinaci, jednoduše hodnoty sečtete - např. je li x=7, zapnou se všechny. 5

6 Nejsem si jist, zda to poběží na Win XP nebo Win Je stisknut shift, ctrl,? Zjistit, zda jsou stisknuty přeřaďovače nebo nastaveny trvalé přeřaďovače není až tak složité: var p,i,z:byte; a:array[1..8] of byte; s:string; {načtení bytu p:} mov ah,02h int 16h mov p,al {zpracovani na array a:} i:=0; repeat i:=i+1; z:=p mod 2; p:=p div 2; a[i]:=z; until p=0; for i:=1 to 8 do s:=' '; if a[i]=1 then case i of 1:s:='pravý Shift'; 2:s:='levý Shift'; 3:s:='Ctrl'; 4:s:='Alt'; 5:s:='ScrollLock'; 6:s:='NumLock'; 7:s:='CapsLock'; 8:s:='Insert'; writeln(s); end. Veškeré stavy přeřaďovačů obsahuje už byte p. Ten se potom ve druhém odstavci zpracuje na array a - jednotlivé bity se převedou na prvky pole (není to potřeba, ale lépe se to čte; v podstatě je to plýtvání místem - jednotlivé prvky pole (byte) obsahují pouze hodnoty 0 a 1). Poslední odstavec pouze ukazuje význam jednotlivých bitů. 6

7 PASCAL Úvod do Pascalu Pascal je asi nejlepší výukový jazyk pro Dos. Pro Windows existuje Delphi, kt. z něj syntakticky vychází. Pascal byl speciálně vyvinut jako výukový jazyk, a proto není zrovna nejvhodnější pro hodně velké projekty. Vymyslel jej v roce 1970 Švícar N. Wirth. Setkal jsem se s dvěma verzemi - Borland Pascalem a Turbo Pascalem. Programy jsem psal v obou, ale rozdíly mezi nimi jsem nenašel (jenom vzájemně nepasovaly soubory jednotek.tpu). Pascal má obrovské možnosti v tzv. strukturovaných datových typech (složené datové typy, které spojují několik jednoduchých). Má velké formální požadavky - programátor musí definovat téměř úplně vše a to v přesně daném pořadí. Co potřebujete pro začátek Rozhodně si stáhněte BP ze sekce Ke stažení (je to balík všech možných Pascalů, ale Borland je rozhodně nejpoužitelnější). Má českou nápovědu (která se mi zobrazuje neuvěřitelně čajově). Pokud si Pascal chcete jen vyskoušet stačí vám si stáhnout TP ze stejné sekce. Jinak ho ale moc nedoporučuji, je pěkně vykuchaný (nemá např. vůbec unitu Graph). Pokud nemáte žádnou učebnici, odskočte si ze sekce Odkazy na Algoritmy a programování. Doporučuji stáhnout celé stránky. Několik tipů Ukazatel a dynamické datové struktury Je to dost velké, a tak jsem to dal na vlastní stránku. Problémy klávesnice Znak Zkratka ' Altgr (apostrof) Altgr ^ (/"š") < Altgr * > Altgr + "y" * { } Altgr + "b","n" [ ] Altgr + "f","g" Pokud skusíte programovat v Pascalu na české klávesnici, možná zjistíte, že některé znaky neumíte napsat, protože je na klávesnici prostě nenajdete. Obvykle tam jsou, ale mají nějakou šílenou zkratku. Ta většinou je (v Dosu): pravý Alt (Altgr, u starších počítačů údajně Ctrl + Alt) + něco. To něco je buď jedna klávesa na alfanumerické nebo několik čísel na numerické části klávesnice. Předpokládám, že nebo \ napsat umíte (pro jistotu Alt + x, v, q), a tak vypisuji ty méně používané (pro Dos), které využijete při programování v Pascalu a vlastně při psaní v jakémkoli dosáckém textovém editoru. Dosovský ovladač klávesnice nebere zkratky Alt+ "," (čárka) a Alt+ "." (tečka) pro znaky označené hvězdičkou * jako Windows, ale mnohé klávesnice mají mezi levým Shiftem a Y ještě jednu klávesu, která by s Altem měla vypsat "<", takže nemusíte vypisovat pokaždé tu šedesátku. Pro Windows jsou ty skratky stejné - u číselných kombinací však používáme levý Alt. 7

8 Jak ovládat myš, ScrollLock, Spousta věcí se dá udělat pouze pomocí vkládaného Assembleru. Jedná se hlavně o ovládání myši a joysticku, o kontrolu přeřaďovacích kláves (ctrl, numlock, ) a další. Několik takových věcí jsem popsal v části o Assembleru. Jak vymazat obsah složky Pascal umožňuje rušit složku, jen pokud je prázdná. Pokud je ve složce velké množství souborů, nebo pokud neznáte její přesný obsah, je nejjednodušší použít příkaz FindFirst: uses dos; var w:integer; dirinfo:tsearchrec; jm:string; s:text; findfirst('*.*',faarchive,dirinfo); repeat {převedení jména souboru z array[0..12] of char na string:} for w:=0 to 12 do jm:=jm+dirinfo.name[w]; assign(s,jm); erase(s); jm:=''; findnext(dirinfo); until doserror<>0; {když je doserror 0, program našel soubor} end. Psaní vlastních jednotek (unit) Pokud pracujete ve více programech se stále stejnými procedurami a funkcemi, můžete v Pascalu využít možnosti psaní vlastních jednotek. Ty se pak zadávají stejně jako např. jednotka Dos, nebo Crt. Psaní jednotek je věc úplně primitivní. V části interface se vypisují názvy (a vztupní + výztupní údaje) procedur, funkcí, konstant (, ), které tvoří obsah knihovny, ve zdrojáku exáče je potom můžeme používat (pokud máme v uses tuto jednotku). Potom je část implementation, ve které jsou jednotlivé výše uvedené fce a procedury vysvětleny (je tam jejich obsah). Mohou tu být i procedury (a fce), které nejsou v interface (a tudíž nemohou být užity ve zdrojáku exáče), jichž využívají ostatní procedury (a samozřejmě fce). V poslední části jsou inicializační věci jednotky, dávají se mezi a end. (s tečkou). Tato část se dost často vynechává, dá se tam prostě jenom end. (s tečkou samozřejmě). Tohle je třeba jednotka, kterou požívám k ovládání myši (trochu jsem ji zkrátil). unit myscz; interface {ukazuje obsah knihovny} type tlmysi=(leve,prave,prostredni); {datový typ použitý v jednotce} function initmys:word; {inicializuj myš} procedure nastkurzor(zk:boolean); {true - zapni / false - vypni kurzor} procedure kdejetlac(tl:tlmysi;var xs:integer; var ys:integer;var poc:integer); {kde se naposledy stisklo požadované tlačítko (xs a ys) a kolikrát se stisklo od posledního měření (poc)} implementation {obsahuje výpis knihovny} 8

9 function initmys:word; {inicializuj myš} var tl:word; mov ax,01 mov tl,bx initmys:=tl; procedure nastkurzor(zk:boolean); if zk=true then mov ax,01 end else mov ax,02 procedure kdejetlac(tl:tlmysi;var xs:integer; var ys:integer;var poc:integer);{05} var ctl:word; {číslo tlačítka} x,y,p:word; case tl of leve: ctl:=0; prave: ctl:=1; prostredni: ctl:=2; mov ax,05 mov bx,ctl mov x,cx mov y,dx mov p,bx poc:=p; xs:=x; ys:=y; end. Podle tohoto schématu si Pascal sám nakompiluje jednotku TPU. V podstatě stejnou strukturu jako zdroják pascalovské unity má i program v Delphi (jazyk pro Windows odvozený z Pascalu). Zde je většina procedur (nebo funkcí) reakcí na nějakou událost (kliknutí myší na tlačítko, ). Dělení programovacích jazyků Programovací jazyky se dají rozdělit podle mnoha kritérií. Nejčastější způsoby jsou tyto: 9

10 Vyšší a nižší Nižší programovací jazyky jsou jazyky primitivní, jejichž instrukce (víceméně přesně) odpovídají příkazům procesoru. To znamená, že procesor bude vykonávat ty instrukce, které programátor napíše. Jsou závislé na svém procesoru a nepřenositelné na jiný (nepříbuzný) procesor (program z 386 na Pentiu pojede, ale na Atari (procesor Motorola) ne). V praxi to vypadá tak, že programátor musí vypisovat "každou pitomost", i jednoduchý program má neúměrně složitý zdrojový kód. Výhodou je, že programátor má takto přístup i k funkcím počítače, které by měl ve vyšším programovacím jazyce nedosažitelné. Patří sem jazyk symbolických adres (Assembler), strojový kód, vzláštním typem nižšího jazyka je tzv. autokód, který spojuje prvky nižších a vyšších jazyků. Vyšší (problémově orientované) programovací jazyky jsou podstatně srozumitelnější, struktura jejich zdrojáků je logická, nejsou závislé na strojových principech počítače. Do strojového kódu se převádějí kompilátorem. V praxi je vyšší programovací jazyk vše, co není Assembler, to znamená: Pascal, C, Basic, Prolog, Lisp, Algol, Fortran, Procedurální a neprocedurální Procedurální jazyky jsou téměř všechny jazyky, které se běžně používají. K řešení úlohy se používá algoritmu (postup, jak se má daná úloha vyřešit). U neprocedurálních jazyků se pouze logickými výroky popisuje daný problém a cíl k řešení úlohy. Např. Prolog, Lisp. Interpretované a kompilované Interpretované jazyky jsou překládány až za běhu programu. Jsou pomalejší, ale nemají tak velké formální požadavky (není potřeba inicializovat proměnnou, její datový typ se může měnit, ). Např. většina verzí Basicu, všechny skriptovací jazyky. Kompilované jazyky jsou celé přeloženy a až potom mohou být spušněny. Jsou rychlejší, mají vyšší nároky na formální správnost kódu. Patří sem většina klasických programovacích jazyků. Teoreticky může mít jeden programovací jazyk verzi interpretovanou i kompilovanou. Některé další programovací jazyky Ada Jazyk určený k výrobě bezpečných a spolehlivých programů. Vyznačuje se velmi silnou typovou kontrolou. Velmi univerzální jazyk, píše se v něm i řídící software pro různé stroje včetně letadel, raketoplánů a dalších. Syntakticky vychází z Pascalu. Algol Algorithmic Language = algoritmický jazyk. Jeden z nejstarších programovacích jazyků (byl vytvořen na přelomu 50. a 60. let). Byl zaměřen na řešení zejména vědeckých a technických úloh. Ačkoliv obsahoval mnoho moderních prvků (které se používají dodnes), příliš se nerozšířil. Je základem všech moderních jazyků. Existuje spousta verzí Algolu, např. Algol 58, Algol 60, Algol 68. ASP Active Server Pages. Serverový skriptovací jazyk od Microsoftu. Má zhruba stejné možnosti jako PHP, ale poněkud složitější syntaxi. Existuje jen na serverech s operačním systémem windows. 10

11 Assembler Basic Assembler = sestavitel (programu). Mám jej na vlastní stránce. Beginners All-purpose Symbolic Instruction Code = Pro začátečníky určený víceúčelový programovací prostředek. Opět je na vlastní stránce. C Jazyk relativně nízké úrovně, původně zaměřený na programování operačních systémů. Má velmi úsporné vyjadřování, a proto je velmi nepřehledný. Existuje velké množství rozšíření jazyka, nejznámější je objektově orientované C++. Cobol Common Business Oriented Language = obecně obchodně orientovaný jazyk. Jeden z nestarších vyšších programovacích jazyků. Vznikl z potřeby programovacího jazyka pro obchodní a ekonomické úlohy, pro úlohy s hromadným zpracováním dat. Opět existuje mnoho verzí tohoto jazyka, např. Cobol- 60, Cobol-61, Cobol-65, Cobol-69, Delphi Programovací jazyk pro Windows vycházející synatkticky z Pascalu. Jeho protředí je vizuální, to znamená, že programátor určuje vzhled programu "kreslením" myší, stejným způsobem i vytváří některé části kódu. Samotný kód se celý skládá z procedur - reakcí na události (klik na prvek, ). Fortran Formula Translation = překlad vzorců. Vůbec první vyšší programovací jazyk. Vznikl v padesátých letech 20. století (první oficiální verze 1957), byl vhodný spíše k matematickým výpočtům. Znamenal ohromný pokrok ve vývoji programování, v podstatě všechny vyšší jazyky z něj (alespoň nepřímo) vycházejí. Dnes se již nepoužívá. HTML Není programovací jazyk, ale jazyk pro práci s hypertextem. HyperText Markup Language = značkovací jazyk pro tvorbu hypertextu (= textu s aktivními odkazy). Základní nástroj pro vytváření internetových stránek. Zobrazený text je doplněn značkami(tagy; jsou v špičatých závorkách), popisujícími jeho vlastnosti. Java Objektově orientovaný programovací jazyk nezávislý na platformě. Vyvinula jej firma Sun Microsystems. Používá se téměř všude, jako doplnění internetových stránek klientským skriptem (java applet), serverový skript (JSP), stejně jako na hry do mobilů i obyčejné programy pro jakýkoli operační systém. Vychází z jazyka C++ (jako mnoho jiných jazyků), který poněkud zjednodušuje. Jako konkurenční jazyk od Microsoftu vznikl C#. JavaScript Nejčastěji používaný internetový klientský skriptovací jazyk. Proběhne až v internetovém prohlížeči (na rozdíl např. od PHP, které proběhne už na serveru). Z bezpečnostních důvodů může ovlivňovat jen 11

12 internetovou stránku, nikoli uživatelský počítač. Neco mám o něm vzlášť. Podobně je na tom i méně používaný VBScript. Lisp List processing. Nejstarší neprocedurální jazyk. Veškeré problémy řeší pomocí symbolů a jejich seznamů. Používá se v programování umělé inteligence. Má velké množství dialektů. Modula 2 Vychází z Pascalu, používal se i ke tvorbě hodně velkých projektů, podporuje modulární programování. MySQL Zjednodušená a free verze SQL - Structured Query Language. Jazyk pro práci s databází. De facto jediná jeho práce spočívá v tom, že vytváří tabulky, ukládá do nich data a vyhledává v nich údaje podle pokynů uživatele. V praxi jej využívají hlavně jiné jazyky (PHP, ) za použití několika spolupracujících tabulek. Pascal Perl Mám jej na vlastní stránce. Practical Extraction Report Language. Téměř univerzální interpretovaný jazyk. Dá se v něm napsat prakticky cokoliv, ale v praxi se používá zejména k psaní CGI skriptů (internetová technologie, serverový skript založený na výstupu.exe souboru) a v těch případech, kdy je potřeba složitě zpracovávat text. Je dosti nepřehledný. PHP Personal Home Page Tools (zkratka se vyvíjela - např.:personal Home Page Construction Kit, dnes: PHP:Hypertext Preprocesor, a to první P je z historických důvodů.). Internetový skriptovací jazyk (serverový) používaný k tvorbě webových stránek. Instrukce se vkládájí do HTML kódu, syntaxe je podobná jazyku C. Práce programu probíhá v serveru, na uživatelský počítač se dostávají jen výsledky. Podobně jsou na tom i zastaralé SSI a výlučně windowsácké ASP. PHP je volně šiřitelné. Prolog Programming in Logic = logické programování. Je to neprocedurální jazyk (na rozdíl od většiny ostatních jazyků), popisuje programátorský problém pomocí logických výroků. Používá se k řešení problémů, které se dají popsat ve formě objektů a vztahů mezi nimi, k tvorbě umělé inteligence. Python Snobol Přehlednější, avšak ne tak oblíbená obdoba Perlu. String Oriented Symbolic Language - Jazyk určený pro práci s řetězci. První jazyk zaměrený zejména na zpracování textových řetězců. V dnešní době byl nahrazen zejména Perlem a dalšími jazyky. 12

13 SSI Server Side Includes - vsuvky na straně serveru. Jednoduchý zastaralý serverový skriptovací jazyk. Nemá zdaleka takové možnosti jako PHP nebo ASP. Tcl Tool Command Language. Univerzální skriptovací jazyk. Je oblíben zejména díky knihovně Tk, která umožňuje psát programy s grafickým rozhraním. Visual Basic Programovací jazyk pro Windows od Microsoftu. Má vizuální prostředí. S ostatními Basici nemá příliš společného. VBScript Visual Basic Script. Internetový skriptovací jazyk, běžící u klienta, obdoba JavaScriptu. Syntakticky vychází z Visual Basicu. Jeho největší nevýhoda (oproti JavaScriptu) je, že jej podporuje jen IE. V podstatě se jedná o nepovedený pokus Microsoftu konkurovat JavaScriptu. XML není programovací jazyk, ale jazyk pro práci s daty. Zjednodušená verze jazyka SGML, který sloužil (dnes se už nepoužívá) ke tvorbě datových formátů založených na stejném základě (vždy se jedná o text doplněný pomocnými znaky, určujícími kvalitu a vlastnosti daného textu). Nejpožívanější z těchto formátů je HTML. XML vznikl odstraněním nepotřebných prvků SGML a jeho modernizací. Skládá se z tagů (s libovolným textem), které však nemají pevný význam, ten se musí definovat v dalším jazyku (např. DTD, XML Schema, SOX nebo XDR) - čímž se vytvoří nový datový formát, pro zobrazení textu na internetu je potřeba ještě definovat vzhled prvků (pomocí CSS nebo XSL FO). Například jazyk XHTML vznikl jako předefinování HTML v XML. Další požívaný jazyk vytvořený v XML je RDF. 13

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

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

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

IB111 Programování a algoritmizace. Programovací jazyky

IB111 Programování a algoritmizace. Programovací jazyky IB111 Programování a algoritmizace Programovací jazyky Programovací jazyky Programovací jazyk Prostředek pro zápis algoritmů, jež mohou být provedeny na počítači Program Zápis algoritmu v programovacím

Více

Programovací jazyky Přehled a vývoj

Programovací jazyky Přehled a vývoj Programovací jazyky Přehled a vývoj 1 Programování a programovací jazyk Historie a současnost programovacích jazyků Objektově orientované a vizuální programování Značkovací a skriptovací jazyky 2 Programování

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

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

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

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

IB111 Úvod do programování skrze Python Přednáška 13

IB111 Úvod do programování skrze Python Přednáška 13 IB111 Úvod do programování skrze Python Přednáška 13 Programovací jazyky Nikola Beneš 14. prosinec 2016 IB111 přednáška 13: programovací jazyky 14. prosinec 2016 1 / 21 Osnova dnešní přednášky Programovací

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

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

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

Č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

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

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

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

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

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.9 10/14

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.9 10/14 ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2014 5.9 10/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 31 0:40 Programovací jazyky Programovací jazyky jsou jazyky

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

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

Úvod do programování

Úvod do programování Úvod do programování Základní literatura Töpfer, P.: Algoritmy a programovací techniky, Prometheus, Praha učebnice algoritmů, nikoli jazyka pokrývá velkou část probíraných algoritmů Satrapa, P.: Pascal

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

Matematika v programovacích

Matematika v programovacích Matematika v programovacích jazycích Pavla Kabelíková am.vsb.cz/kabelikova pavla.kabelikova@vsb.cz Úvodní diskuze Otázky: Jaké programovací jazyky znáte? S jakými programovacími jazyky jste již pracovali?

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

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé

Více

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

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

1 Základních pojmy z oblasti programování, vyšší programovací jazyky, programovací paradigmata

1 Základních pojmy z oblasti programování, vyšší programovací jazyky, programovací paradigmata 1 Základních pojmy z oblasti programování, vyšší programovací jazyky, programovací paradigmata Studijní cíl Tento první blok celého kurzu zaměřen na zvládnutí základních pojmů z oblasti programování a

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

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

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

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

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Čí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

Programovací jazyk. - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi)

Programovací jazyk. - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi) Programovací jazyk - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi) Odlišnosti implementace od normy - odchylky např.: nepovinná hlavička programu odlišná

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

ČÁST 1. Základy 32bitového programování ve Windows

ČÁST 1. Základy 32bitového programování ve Windows Obsah Úvod 13 ČÁST 1 Základy 32bitového programování ve Windows Kapitola 1 Nástroje pro programování ve Windows 19 První program v Assembleru a jeho kompilace 19 Objektové soubory 23 Direktiva INVOKE 25

Více

Úvod. Programovací paradigmata

Úvod. Programovací paradigmata .. Úvod. Programovací paradigmata Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Cíl: programování efektivně a bezpečně Programovací techniky

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

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

Assembler - 5.část. poslední změna této stránky: Zpět

Assembler - 5.část. poslední změna této stránky: Zpět 1 z 5 19.2.2007 7:52 Assembler - 5.část poslední změna této stránky: 9.2.2007 1. Pseudoinstrukce a direktivy Zpět Kromě instrukcí můžete v Assembleru psát také další konstrukce, které se obšem nepřekládají

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

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14 ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 12 0:40 UML unifikovaný modelovací jazyk Zkratka tohoto

Více

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída:

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída: DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP Maturitní projekt Vypracoval: Denis Ptáček Třída: 4B Rok: 2014/2015 Obsah 1. Použité nástroje... 3 1.1 NetBeans

Více

2.1 Podmínka typu case Cykly Cyklus s podmínkou na začátku Cyklus s podmínkou na konci... 5

2.1 Podmínka typu case Cykly Cyklus s podmínkou na začátku Cyklus s podmínkou na konci... 5 Obsah Obsah 1 Řídicí struktury 1 2 Podmínka 1 2.1 Podmínka typu case......................... 2 3 Příkaz skoku 3 4 Cykly 4 4.1 Cyklus s podmínkou na začátku................... 4 4.2 Cyklus s podmínkou

Více

Využití OOP v praxi -- Knihovna PHP -- Interval.cz

Využití OOP v praxi -- Knihovna PHP -- Interval.cz Page 1 of 6 Knihovna PHP Využití OOP v praxi Po dlouhé teorii přichází na řadu praxe. V následujícím textu si vysvětlíme možnosti přístupu k databázi pomocí různých vzorů objektově orientovaného programování

Více

Instalace a konfigurace web serveru. WA1 Martin Klíma

Instalace a konfigurace web serveru. WA1 Martin Klíma Instalace a konfigurace web serveru WA1 Martin Klíma Instalace a konfigurace Apache 1. Instalace stáhnout z http://httpd.apache.org/ nebo nějaký balíček předkonfigurovaného apache, např. WinLamp http://sourceforge.net/projects/winlamp/

Více

Skriptovací jazyky. Obsah

Skriptovací jazyky. Obsah Skriptovací jazyky doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Co je to skriptovací jazyk? Výhody a nevýhody

Více

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných Tematický celek 03 3.1 Proměnné Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace. 3.1.1 Deklarace proměnných Dim jméno_proměnné [As typ] - deklarace uvnitř procedury platí pouze pro

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

Nové jazykové brány do Caché. Daniel Kutáč

Nové jazykové brány do Caché. Daniel Kutáč Nové jazykové brány do Caché Daniel Kutáč O čem budeme mluvit.net T/SQL Perl Python MultiValue Basic Téma.NET provider .NET Provider Co lze již dnes Factory / VisM ODBC.NET Web Services Factory a VisM

Více

Princip funkce počítače

Princip funkce počítače Princip funkce počítače Princip funkce počítače prvotní úlohou počítačů bylo zrychlit provádění matematických výpočtů první počítače kopírovaly obvyklý postup manuálního provádění výpočtů pokyny pro zpracová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í 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

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové

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

Identifikátor materiálu: ICT-1-21

Identifikátor materiálu: ICT-1-21 Identifikátor materiálu: ICT-1-21 Předmět Informační a komunikační technologie Téma materiálu Další programové vybavení Autor Ing. Bohuslav Nepovím Anotace Student si procvičí / osvojí databázové systémy.

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

Programovací jazyky. Obsah. Proč používáme programovací jazyky? Programovací jazyk

Programovací jazyky. Obsah. Proč používáme programovací jazyky? Programovací jazyk Obsah Programovací jazyky doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Co je to programovací jazyk Překlad a zpracování

Více

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Vyšší odborná škola ekonomická a zdravotnická a Střední škola, Boskovice INOVACE PŘEDMĚTŮ ICT MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Zpracoval: Jaroslav Kotlán srpen 2009s Úvod Modul Programování

Více

Martin Hejtmánek hejtmmar@fjfi.cvut.cz http://kmlinux.fjfi.cvut.cz/ hejtmmar

Martin Hejtmánek hejtmmar@fjfi.cvut.cz http://kmlinux.fjfi.cvut.cz/ hejtmmar Základy programování Martin Hejtmánek hejtmmar@fjfi.cvut.cz http://kmlinux.fjfi.cvut.cz/ hejtmmar Počítačový kurs Univerzity třetího věku na FJFI ČVUT Pokročilý 21. května 2009 Dnešní přednáška 1 Počátky

Více

Maturitní témata Školní rok: 2015/2016

Maturitní témata Školní rok: 2015/2016 Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní

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 PRVOCISLA: KRATKY UKAZKOVY PRIKLAD NA DEMONSTRACI BALIKU WEB 1

1 PRVOCISLA: KRATKY UKAZKOVY PRIKLAD NA DEMONSTRACI BALIKU WEB 1 1 PRVOCISLA: KRATKY UKAZKOVY PRIKLAD NA DEMONSTRACI BALIKU WEB 1 1. Prvocisla: Kratky ukazkovy priklad na demonstraci baliku WEB. Nasledujici program slouzi pouze jako ukazka nekterych moznosti a sluzeb,

Více

Identifikátory označují objekty v programu používané (proměnné, typy, podprogramy).

Identifikátory označují objekty v programu používané (proměnné, typy, podprogramy). JAZYK PASCAL ÚVOD materiály pro studenty Jiráskova gymnázia v Náchodě (verze 2005-10-28) RNDr Jan Preclík, PhD preclik@gymnachodcz Jazyk Pascal byl navržen profesorem curyšské univerzity Niklausem Wirthem

Více

language="javascript">... </script>.

language=javascript>... </script>. WWW (World Wide Web) je dnes společně s elektronickou poštou nejvyužívanější službou internetu. URL (Uniform Resource Locator) slouží ke kompletní adresaci informace na internetu. Udává jak protokol, který

Více

C2115 Praktický úvod do superpočítání

C2115 Praktický úvod do superpočítání C2115 Praktický úvod do superpočítání IX. lekce Petr Kulhánek, Tomáš Bouchal kulhanek@chemi.muni.cz Národní centrum pro výzkum biomolekul, Přírodovědecká fakulta, Masarykova univerzita, Kotlářská 2, CZ-61137

Více

Programování. Úvod a základní principy. Martin Urza

Programování. Úvod a základní principy. Martin Urza Programování Úvod a základní principy Martin Urza Co je programování? Řešení úloh s pomocí počítače. Počítače jsou extrémně rychlé a velmi hloupé. Lidé jsou sice pomalejší, ale umí (nebo by většinou alespoň

Více

Stránka se dá otevřít dvěma způsoby

Stránka se dá otevřít dvěma způsoby Co je potřeba Mozek, to zaprvé. Budete potřebovat počítač, na kterém běží alespoň nějaký jednoduchý textový editor (Poznámkový blok). Potřebujete webový prohlížeč. Hodí se připojení na internet. Kdo nemá

Více

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím ICT Číslo projektu: CZ.1.07/1.5.00/34.0940

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

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

Ukázka knihy z internetového knihkupectví www.kosmas.cz

Ukázka knihy z internetového knihkupectví www.kosmas.cz Ukázka knihy z internetového knihkupectví www.kosmas.cz U k á z k a k n i h y z i n t e r n e t o v é h o k n i h k u p e c t v í w w w. k o s m a s. c z, U I D : K O S 1 8 1 1 4 2 U k á z k a k n i h

Více

Poslední nenulová číslice faktoriálu

Poslední nenulová číslice faktoriálu Poslední nenulová číslice faktoriálu Kateřina Bambušková BAM015, I206 Abstrakt V tomto článku je popsán a vyřešen problém s určením poslední nenulové číslice faktoriálu přirozeného čísla N. Celý princip

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

Object Pascal je přísně typový procedurální jazyk, který umožňuje jak strukturované, tak objektově orientované programování.

Object Pascal je přísně typový procedurální jazyk, který umožňuje jak strukturované, tak objektově orientované programování. Delphi lekce 6 Minimum z Object Pascalu Vrátíme se ještě k základům Object Pascalu. Struktura programu Object Pascal je přísně typový procedurální jazyk, který umožňuje jak strukturované, tak objektově

Více

Další nutný soubor je laydiv.js, ve kterém jsou uloženy funkce pro zobrazování virů na ploše a funkce pro odkaz na Teachers Guide.

Další nutný soubor je laydiv.js, ve kterém jsou uloženy funkce pro zobrazování virů na ploše a funkce pro odkaz na Teachers Guide. ESCAPE OF VIRUSES Hra Escape of viruses je psána pomocí příkazů Javascriptu a standardních příkazů HTML. Hra se spouští tlačítkem Start game. Úkolem hráče je eliminovat viry na hrací ploše kliknutím kurzoru

Více

Klávesnice je vstupní zařízení určené pro zadávání písmen, znaků, speciálních symbolů a také pro ovládání počítače.

Klávesnice je vstupní zařízení určené pro zadávání písmen, znaků, speciálních symbolů a také pro ovládání počítače. Klávesnice počítače Klávesnice je vstupní zařízení určené pro zadávání písmen, znaků, speciálních symbolů a také pro ovládání počítače. Takto vypadá standardní česká klávesnice: Pro lepší orientaci rozdělíme

Více

Programové vybavení počítačů operační systémy

Programové vybavení počítačů operační systémy Programové vybavení počítačů operační systémy Operační systém Základní program, který oživuje hardware a poskytuje prostředí pro ostatní programy Řídí využití procesoru, síťovou komunikaci, tisk, ovládá

Více

Programovací jazyk univerzální notace pro zápis algoritmů, implementována.

Programovací jazyk univerzální notace pro zápis algoritmů, implementována. Programovací jazyk univerzální notace pro zápis algoritmů, která je implementována. Proč studovat programovací jazyky? æ schopnost psát efektivní programy pole jako parametr funkce nebo procedury lze v

Více

Předměty. Algoritmizace a programování Seminář z programování. Verze pro akademický rok 2012/2013. Verze pro akademický rok 2012/2013

Předměty. Algoritmizace a programování Seminář z programování. Verze pro akademický rok 2012/2013. Verze pro akademický rok 2012/2013 Předměty Algoritmizace a programování Seminář z programování Verze pro akademický rok 2012/2013 Verze pro akademický rok 2012/2013 1 Přednášky Jiřina Královcová MTI, přízemí budovy A Tel: 48 53 53 521

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í 01. Základní pojmy a principy programování 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

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

DTP Základy programování Úvod do předmětu

DTP Základy programování Úvod do předmětu DTP Základy programování 01 - Úvod do předmětu Úvod Co již umíte? Plán předmětu Studijní materiály Způsob ukončení předmětu Základní pojmy I. Řešený problém: Řešeným nebo zpracovávaným problémem je konkrétní

Více

Základy HTML. Autor: Palito

Základy HTML. Autor: Palito Základy HTML Autor: Palito Zobrazení zdrojového kódu Zobrazení zdrojového kódu Každá stránka je na disku nebo na serveru uložena ve formě zdrojového kódu. Ten kód je psaný v jazyce HTML. Když si chcete

Více

Úvod do aplikací internetu a přehled možností při tvorbě webu

Úvod do aplikací internetu a přehled možností při tvorbě webu CVT6 01a Úvod do aplikací internetu a přehled možností při tvorbě webu Internet a www Internet? Služby www ftp e-mail telnet NetNews konference IM komunikace Chaty Remote Access P2P aplikace Online games

Více

Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí

Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí 02 Jazyk C - je imperativní říkáme, co se má udělat, voláme příkazy - další imperativní jazyky: Pascal, Java, C/C++ apod. - na rozdíl od jazyků deklarativních např. Prolog, Haskell, Scheme, Lisp (funkcionální

Více

Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, 360 09 Karlovy Vary Autor: Ing. Hana Šmídová Název materiálu:

Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, 360 09 Karlovy Vary Autor: Ing. Hana Šmídová Název materiálu: Název školy: Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, 360 09 Karlovy Vary Autor: Ing. Hana Šmídová Název materiálu: VY_32_INOVACE_02_ACCESS_P2 Číslo projektu: CZ 1.07/1.5.00/34.1077

Více

Rozklad na prvočinitele. 3. prosince 2010

Rozklad na prvočinitele. 3. prosince 2010 Rozklad na prvočinitele Ondřej Slavíček 3. prosince 2010 1 Obsah 1 Příručka k programu 3 1.1 funkce main()............................. 3 1.2 funkce hlavnifunkce()........................ 3 1.3 funkce

Více

Skripta ke školení. Základy VBA. vypracoval: Tomáš Herout. tel:

Skripta ke školení. Základy VBA. vypracoval: Tomáš Herout.   tel: Skripta ke školení Základy VBA vypracoval: Tomáš Herout e-mail: herout@helpmark.cz tel: 739 719 548 2016 Obsah TROCHA TEORIE VBA...2 ZPŮSOB ZÁPISU VE VBA...2 CO JE TO FUNKCE...2 CO JE TO PROCEDURA...2

Více

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování Tvorba WWW stránek přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování HTML/XHTML kaskádové styly PHP spolupráce PHP s databázemi Technologie

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

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Pole Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 14 Číslo: V/5 Programování v jazyce

Více

Základy programování. Úloha: Eratosthenovo síto. Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP

Základy programování. Úloha: Eratosthenovo síto. Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP Základy programování Úloha: Eratosthenovo síto Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP Obsah 1 Zadání úkolu: 3 1.1 Zadání:............................... 3 1.2 Neformální zápis:.........................

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

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

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

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.05 Název materiálu: Anotace Autor Jazyk Očekávaný výstup 05 Zásady psaní v jazyce PHP DUM naučí základní kroky v psaní správné syntaxe PHP, žák napíše svůj první skript Ing.

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