Implementace seznamů do prostředí DELPHI pomocí lineárního seznamu

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Implementace seznamů do prostředí DELPHI pomocí lineárního seznamu"

Transkript

1 Implementace seznamů do prostředí DELPHI pomocí lineárního seznamu Ukazatel a dynamické datové struktury v prostředí DELPHI Důležitým termínem a konstrukčním programovým prvkem je typ UKAZATEL. Je to vlastně datový typ proměnné, která ukazuje na jinou proměnnou, která může být několika typů integer, char, string, nebo i rekord. Vlastní obsah proměnné typu ukazatel je místo v paměti, kde se nalézá konkrétní informace, na kterou ukazatel ukazuje. Při tvorbě programu nemáme přímý přístup k adrese v paměti (k čemu taky??), můžeme pouze vytvářet (příkazem NEW), přiřazovat, nebo mazat (příkazem DISPOSE). Můžeme však dosti rozmanitě pracovat s proměnnou na kterou tento datový typ UKAZATEL ukazuje. Každému ukazateli je nejdříve nutno před jeho použitím vytvořit místo v paměti. Tuto operaci provedeme pomocí příkazu NEW. Ten vybere náhodné nevyužité místo v paměti a dosadí do ukazatele jeho adresu. Při ukončení práce s programem je vhodné tuto náhodně vybranou paměť opět uvolnit pro jiné účely. To se provede pomocí příkazu DISPOSE. Pokud se toto neprovede, lze očekávat, že některé složitější programy zvláště na méně výkonných počítačích budou kolabovat a blokovat se, jelikož paměť vyhrazena pro běh programu bude zanesena množstvím nezrušených ukazatelů a hodnot v paměti. Ukazatel se definuje pomocí znaku ^ + typ proměnné na který takto zadeklamovaný ukazatel ukazuje. Hlavní a v podstatě téměř jediné využití datového typu ukazatel je při práci s dynamickými datovými strukturami. To znamená při práci s proměnlivým množstvím normálních proměnných. Výhody tohoto datového uspořádání jsou ty, že množství hodnot se může při běhu programu měnit. Většinou se jedná o nějaký záznam (RECORD), který by měl obsahovat alespoň jeden UKAZATEL na tentýž záznam. Při definování takovýchto typů zjišťujeme, že jeden typ proměnné je definován druhým typem využíváme tedy princip rekurze. Tento typ dynamické proměnné se tak skládá ze dvou složek, z nichž jedna je hodnotová část, nesoucí údaj o hodnotě a druhá složka je adresní část, nesoucí údaje o adrese, většinou na svého následovníka a předchůdce. Tento princip se neustále opakuje. Jedno z nejjednodušších provedení tohoto příkazu je při tvorbě jednosměrného seznamu. Pod pojmem seznam rozumíme takovou dynamickou datovou strukturu, která umožňuje odebírat nebo přidávat libovolný prvek na kterékoliv pozici. Seznam si můžeme představit jako posloupnost prvků, kde vazba určuje následníka, případně předchůdce, vždy však nejvýše jednoho. Ve většině programů se zavádí ukazatel na začátek seznamu (ČELO, HLAVA apod. ) a na konec seznamu, teda na poslední obsazený prvek. (KONEC, POSLEDNÍ ). Při programové tvorbě seznamu využíváme většinou tyto operace pro manipulaci s prvky: vytvoření prázdného seznamu přidání nového prvku na konec seznamu odebrání prvku z čela seznamu test prázdnosti seznamu odstranění libovolného prvku ze seznamu vložení nového prvku na libovolné místo v seznamu 1

2 V programovém prostředí DELPHI by toto provedení mohlo vypadat následovně: Operace vytvoření prázdného seznamu a vložení prvku na první pozici seznamu - zde operace VYTVOR a PRIDEJ: Procedure Vytvor (var celo:spoj); Begin celo:=nil; Procedure Pridej (var celo,konec:spoj;h:thodnota); Var P:spoj; Begin NEW(P); P^.hodnota:=H; P^.dalsi:=NIL; if celo=nil then celo:=p //první vložená hodnota konec^.dalsi:=p; //ostatní vložené hodnoty konec:=p; //nový konec struktury} Tato konstrukce je obecná a níže je kód použitý v programu implementace ADT: procedure MujCREATE2; P:=nil Tento krok je klasické vytvoření prázdného seznamu, následuje fragment kódu pro vložení prvku s vlastnostmi načtenými z komponenty EDIT: procedure MujINSERT2(zb: Zbozi); var r: Pvag; new(r); // nový prvek r^.z:=zb; // naplníme zbozim r^.dalsi:=p; // připojíme k p p:=r; // p nastavíme na začátek var novy: Zbozi; //deklarace proměnné if (Edit1.Text<>'') and (Edit2.Text<>'') and (Edit3.Text<>'') and (Edit4.Text<>'') and (Edit5.Text<>'') then // musí být vyplněny všechny položky jinak vrátí chybu novy.druh:=edit1.text; //načítání údajů z komponent EDIT (1-5) novy.mnozstvi:=strtoint(edit2.text); //převedení řetězce na číslo novy.obchod:=edit3.text; novy.maxcena:=strtoint(edit4.text); novy.datumnakupu:=edit5.text; MujINSERT2(novy); Edit1.Text:=''; Edit2.Text:=''; Edit3.Text:=''; Edit4.Text:=''; 2

3 Edit5.Text:=''; end Memo1.Lines.Add(''); Memo1.Lines.Add('Prosím, vyplňte všechny údaje!!'); nevyplnění všech polí //hlášení při Postup pro vložení nového prvku do již existujícího seznamu prvků Pokud potřebujeme vložit nový prvek na konec seznamu můžeme použít buď jednoduchou konstrukci tohoto typu: New(P); //prosté zařazení prvku na konec seznamu, jednoduché P^.hodn := H; řešení, které ale ne vždy vyhovuje P^.dalsi := NIL; Konec:=konec^.dalsi; Nebo můžeme znovu zavolat výše uvedenou proceduru PRIDEJ. Pro zjednodušení grafická podoba nového seznamu: X1,x2,x3,. Hodnotová část Adr.na x2 Adresní část Tato procedury slouží pro vložení prvku na konec již existujícího seznamu. Pokud chceme vložit nový prvek na začátek seznamu, tzn. před prvek na který ukazuje předchozí jeho prvek v seznamu, v našem případě tedy hned za CELO a před prvek na který CELO ukazuje, mohla by být konstrukce takováto: New(P); P^.hodn := H; P^.dalsi := Celo; Celo:= P; P:= NIL; 3

4 Pokud chceme vkládat prvek na přímo určené místo v seznamu, musíme zavést jakousi značku, která označí ono místo podle předem daných kriterii, které si stanovíme. Nechť je pomocná značka označena jako POM, pak: New(P); P^.hodn := H; P^.dalsi := pom^.dalsi; Pom^.dalsi := P; Zde jsme prvek vložili za hodnotu x2, tzn. ukazatel POM byl nastaven na prvek X1. Při vkládání prvku před ukazatel POM je situace poněkud komplikovanější neboť potřebujeme znát adresu prvku předcházejícího, proto bychom měli zadeklamovat a umístit pomocný ukazatel - zde PŘED.Konstrukce pro vložení prvku před ukazatele POM by mohla nyní vypadat následovně: Pred := Celo; While Pred^.dalsi <> Pom DO Pred := Pred^.dalsi; New(P); P^.hodnota := H; P^.dalsi := Pom; Pred^.dalsi := P; Pred := NIL; P:= NIL; Prvek, jehož hodnota je rovna 5, byl nalezen příslušnou vyhledávací funkcí. Písmenem u je vyjádřen počátek seznamu, písmeno w označuje vkládaný prvek. Hledání prvku obsahuje porovnání čteného čísla s hodnotou aktuálního prvku. Pokud je hodnota prvku menší než přečtené číslo, postupujeme v lineárním seznamu k dalšímu prvku. Nalezená hodnota je tedy ta, která je poslední menší než přečtené číslo a za tuto hodnotu vložíme nový prvek. Odstranění prvku ze seznamu Odstranění prvního prvku ze seznamu Odstranění prvního prvku je nejjednodušší typ odstranění a použijeme proceduru VYBER. Procedure Vyber(var celo:spoj; var H:hodnota); Var p:spoj; Begin if celo = NIL then writeln('chyba') p:=celo; H:=celo^.hodnota; celo:=celo^.dalsi; dispose(p); 4

5 Takto provedená konstrukce obsahuje i test prázdnosti seznamu, který ale můžeme vynechat pokud víme, že seznam je určitě naplněn. Potom: P := Celo; Celo:= Celo^.dalsi; Dispose (P); Odstranění posledního prvku v seznamu Opět poněkud komplikovanější řešení, jelikož při odstraňování posledního prvku potřebujeme znát adresu předposledního prvku, je nutné deklarovat a umístit ukazatel PŘED a teprve potom provést vlastní odstranění prvku. Čili: Pred := Celo; While Pred^.dalsi <> Konec DO Pred := Pred^.dalsi; P := Konec; Konec := Pred; Konec^.dalsi := Nil; Dispose(P); Odstranění libovolného prvku ze seznamu Výše uvedené konstrukce programu platily pro odebrání dvou krajních prvků ze seznamu prvního a posledního. Při operaci odebrání prvků, které nejsou ani na jednom umístění musíme opět použít adresu prvku který předchází odebíranému prvku. V níže uvedeném provedení se tato adresa zjišťuje ze značky PRED. Zde je nutno použít tyto příkazy, které odkazují na prvek označeny jako POM a zároveň je ukazatel umístíme PŘED. Pred := Celo; While Pred^.dalsi <> Pom DO Pred := Pred^.dalsi; Pred^.dalsi := Pom^.dalsi; Dispose(Pom); Pom := Nil; Pred := Nil; Pokud potřebujeme vypsat hodnotu, nebo údaj na značce, například při zařazování položek do seznamu, lze použít tento zdrojový kód: procedure vypis_udaj_na_znacce; writeln(znacka^.hodnota); Pokud chceme zjistit adresu prvku jejíž datová část je shodná s níže uvedenou podmínkou RESULT:= použijeme právě tuto konstrukci: function Najdi (zac: UkTypPrvku; cis: integer): UkTypPrvku; if zac^.hodnota>cis then result:= nil while (zac^.dalsiprvek<>nil) and (zac^.dalsiprvek^.hodnota<cis) do zac:= zac^.dalsiprvek; result:= zac 5

6 Tento přiřazovací příkaz (result:=zac) má smysl i při nenalezení žádaného prvku, jelikož je funkce NAJDI deklarována v každém případě. Procedury pro výpis nebo tisk seznamu Nejprve obecná procedura: procedure vypis(zac: UkTypPrvku); while zac <> nil do //průchod lineárním seznamem// memo1.lines.add(inttostr(zac^.hodnota)); zac:= zac^.dalsiprvek; //přechod na další prvek// cislo:= strtoint(edit1.text); vloznovyprvek(zacatek, cislo); vypis; V programu ADT je použita tato konstrukce výpisu prvků: function MujFIRST2(P: Pvag): Pvag; result:=p procedure TForm2.Button6Click(Sender: TObject); var pom: zbozi; Memo1.Lines.Clear; MEmo1.Lines.Add(''); Memo1.Lines.Add(' Výpis seznamu :'); q:=mujfirst2(p); if q <> nil then //průchod seznamem while q<> nil do pom:=q^.z; //přechod na další prvek Memo1.Lines.Add(pom.Druh); //načítání vlastností Memo1.Lines.Add(IntToStr(pom.Mnozstvi)); Memo1.Lines.Add(pom.Obchod); Memo1.Lines.Add(IntToStr(pom.MaxCena)); Memo1.Lines.Add(pom.DatumNakupu); Memo1.Lines.Add(''); q:=q^.dalsi; end Algoritmus tisku prvků je konkrétním případem obecného algoritmu průchodu lineárním seznamem s provedením nějaké akce. Podmínkou je, aby byl poslední prvek seznamu odlišitelný od ostatních prvků poslední prvek má vždy hodnotu ukazatele na další prvek nil. 6

7 Další použité procedury pro výpis prvků v seznamu: funkce použity v ADT function MujEND2(P: Pvag): Pvag; //tato funkce vypíše poslední prvek seznamu var r: Pvag; r:=p; if r<>nil then while r^.dalsi<>nil do r:=r^.dalsi; result:=r //dokud r není poslední, pokračuj Pro funkci zjištění následující pozice za pozicí Q použitá v programu ADT function MujNEXT2(P: Pvag): Pvag; var r: Pvag; r:=q; if r<> nil then //pokud r není nil, čili pokud není r poslední prvek if r^.dalsi<>nil then r:=r^.dalsi; result:=r // pokud další prvek není nil Tato funkce zajistí nalezení předcházejícího prvku, v našem případě prvku R, ležícího před Q. function MujPREVIOUS2(P: Pvag): Pvag; var r: Pvag; r:=p; if q<>r then // pokud už neukazuje na začátek if r^.dalsi<>nil then while r^.dalsi<>q do r:=r^.dalsi; // tak dlouho dokud r není před q result:=r Když seznam už nebudeme používat, měly bychom uvolnit místo v paměti. Opět použijeme průchod lineárním seznamem. procedure TForm2.FormCreate(Sender: TObject); var pom: UkTypPrvku; while zacatek<>nil then pom:= zacatek; zacatek:= začátek^.dalsiprvek; dispose(pom); Internetové odkazy související s tématem:

8 Pro zájemce uvádím další možnosti použití seznamu Takhle nějak by mohl vypadat jednoduchý seznam, jehož princip je přibližně takovýto:v paměti na náhodných pozicích je uloženo pomocí příkazu RECORD, několik hodnot, nebo prvků. Na začátek seznamu ukazuje ukazatel ZACATEK a na poslední prvek ukazuje ukazatel KONEC. Každý prvek v seznamu (zde použití typu CHAR) obsahuje HODNOTU, která nese uložené informace a ukazatel na další návazný prvek v seznamu DALSI. První prvek tak ukazuje na druhy prvek, ten ukazuje na třetí prvek a tak stále dokola až na poslední prvek, který neukazuje nikam. Mezi těmito prvky se pohybuje značka, která se využívá ke čtení dat. Nevýhodou jednosměrného seznamu, jak už vyplývá z nazvu, je průchod značky jen jedním směrem od počátku na konec, nebo skokem na začátek nebo konec seznamu type ukprvek=^prvek; prvek=record hodnota:char; {nebo něco úplně jiného} dalsi:ukprvek; var zacatek,znacka,konec:ukprvek; procedure vloz_na_zacatek(s:char); var p:ukprvek; new(p); p^.hodnota:=s; p^.dalsi:=zacatek; zacatek:=p; procedure vloz_na_konec(s:char); var p:ukprvek; new(p); konec^.hodnota:=s; konec^.dalsi:=p; konec:=p; function odeber_ze_zacatku:char; var p:ukprvek; if zacatek=konec then writeln('chyba') 8

9 odeber_ze_zacatku:=zacatek^.hodnota; p:=zacatek; zacatek:=zacatek^.dalsi; dispose(p); procedure znacka_na_zacatek; znacka:=zacatek; procedure posun_znacku; if znacka<>konec then znacka:=znacka^.dalsi; procedure vypis_udaj_na_znacce; writeln(znacka^.hondota); {vytvořit seznam:} new(zacatek); konec:=zacatek;. 9

Radomíra Duží L06615. Datový typ množina

Radomíra Duží L06615. Datový typ množina Radomíra Duží L06615 Datový typ množina Množina slouží k uložení prvků stejného bázového ordinárního typu. Bázové typy - jsou typy, jejichž hodnot mohou prvky množiny nabývat. Nesmí obsahovat více než

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

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

1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10

1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10 Úlohy- 2.cvičení 1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10 2. Převeďte dané desetinné číslo do dvojkové soustavy (DEC -> BIN): a) 0,8125 10 b) 0,35 10

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

- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku

- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku Znaky - standardní typ char var Z, W: char; - znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku - v TP (často i jinde) se používá kódová

Více

Datové struktury. alg12 1

Datové struktury. alg12 1 Datové struktury Jedna z klasických knih o programování (autor prof. Wirth) má název Algorithms + Data structures = Programs Datová struktura je množina dat (prvků, složek, datových objektů), pro kterou

Více

Texty k Programování na VŠFS. Petr Kučera () Texty k Programování na VŠFS 29. května 2006 1 / 117

Texty k Programování na VŠFS. Petr Kučera () Texty k Programování na VŠFS 29. května 2006 1 / 117 Texty k Programování na VŠFS Petr Kučera 29. května 2006 Petr Kučera () Texty k Programování na VŠFS 29. května 2006 1 / 117 Obsah Základní informace k předmětu Dynamicky alokovaná paměť Jednoduché dynamicky

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

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech 7 Formátovaný výstup, třídy, objekty, pole, chyby v programech 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 formátovanému výstupu,

Více

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Jazyk Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět Cílová skupina (ročník) Úroveň

Více

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu 1 Podklady předmětu pro akademický rok 2006/2007 Radim Farana Obsah 2 Obsah předmětu, Požadavky kreditového systému, Datové typy jednoduché, složené, Programové struktury, Předávání dat. Obsah předmětu

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

Semestrální práce z předmětu Matematika 6F

Semestrální práce z předmětu Matematika 6F vypracoval: Jaroslav Nušl dne: 17.6.24 email: nusl@cvut.org Semestrální práce z předmětu Matematika 6F Zádání: Cílem semestrální práce z matematiky 6F bylo zkoumání hudebního signálu. Pluginem ve Winampu

Více

MS Excel 2010. Základy maker. Operační program Vzdělávání pro konkurenceschopnost. Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU

MS Excel 2010. Základy maker. Operační program Vzdělávání pro konkurenceschopnost. Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU MS Excel 2010 Základy maker Operační program Vzdělávání pro konkurenceschopnost Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU Registrační číslo: CZ.1.07/2.2.00/15.0224, Oblast podpory:

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

ExcelVBAmodul. Podpora pro výměnu dat automatů MICROPEL s aplikací Microsoft Excel

ExcelVBAmodul. Podpora pro výměnu dat automatů MICROPEL s aplikací Microsoft Excel ExcelVBAmodul Podpora pro výměnu dat automatů MICROPEL s aplikací Microsoft Excel ExcelVBAmodul Podpora pro výměnu dat automatů MICROPEL s aplikací Microsoft Excel 3. verze dokumentu 05/2013 MICROPEL s.r.o.

Více

VY_32_INOVACE_08_2_04_PR

VY_32_INOVACE_08_2_04_PR Ing. Petr Stránský VY_32_INOVACE_08_2_04_PR Příkazy vstupu - definice Výstupním zařízením může být obrazovka, tiskárna nebo soubor. Jednotlivé údaje se zapisují pomocí příkazu WRITE nebo WRITELN. Příkaz

Více

Kód. Proměnné. #include <iostream> using namespace std; int main(void) { cout << "Hello world!" << endl; cin.get(); return 0; }

Kód. Proměnné. #include <iostream> using namespace std; int main(void) { cout << Hello world! << endl; cin.get(); return 0; } Jazyk C++ Jazyk C++ je nástupcem jazyka C. C++ obsahuje skoro celý jazyk C, ale navíc přidává vysokoúrovňové vlastnosti vyšších jazyků. Z toho plyne, že (skoro) každý platný program v C je také platným

Více

Datové typy a struktury

Datové typy a struktury atové typy a struktury Jednoduché datové typy oolean = logická hodnota (true / false) K uložení stačí 1 bit často celé slovo (1 byte) haracter = znak Pro 8-bitový SII kód stačí 1 byte (256 možností) Pro

Více

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Projekt je realizován v rámci Operačního programu Vzdělávání pro konkurence

Více

Databázové a informační systémy Jana Šarmanová

Databázové a informační systémy Jana Šarmanová Databázové a informační systémy Jana Šarmanová Obsah Úloha evidence údajů, způsoby evidování Databázové technologie datové modely, dotazovací jazyky. Informační systémy Datové sklady Metody analýzy dat

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

Výčtový typ strana 67

Výčtový typ strana 67 Výčtový typ strana 67 8. Výčtový typ V této kapitole si ukážeme, jak implementovat v Javě statické seznamy konstant (hodnot). Příkladem mohou být dny v týdnu, měsíce v roce, planety obíhající kolem slunce

Více

Zásobník (LIFO) Opakem zásobníku LIFO je fronta FIFO (First In, First Out první dovnitř, první ven)

Zásobník (LIFO) Opakem zásobníku LIFO je fronta FIFO (First In, First Out první dovnitř, první ven) Zásobník (LIFO) Je dynamická datová struktura s těmito dovolenými operacemi: CREATE(S) - vytvoří prázdný zásobník S, TOP(S) - vrátí prvek na vrchu zásobníku S, POP(S) - vyhodí prvek na vrchu zásobníku

Více

MQL4 COURSE. By Coders guru www.forex-tsd.com. -5 Smyčky & Rozhodnutí Part 1

MQL4 COURSE. By Coders guru www.forex-tsd.com. -5 Smyčky & Rozhodnutí Part 1 MQL4 COURSE By Coders guru www.forex-tsd.com -5 Smyčky & Rozhodnutí Part 1 Vítejte v páté lekci mého kurzu MQL4. Předchozí lekci si můžete stáhnout z tohoto odkazu: http://forex-tsd.com /attachment.php?attachmentid=399

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

Programování v jazyku LOGO - úvod

Programování v jazyku LOGO - úvod Programování v jazyku LOGO - úvod Programovací jazyk LOGO je určen pro výuku algoritmizace především pro děti školou povinné. Programovací jazyk pracuje v grafickém prostředí, přičemž jednou z jeho podstatných

Více

Profilová část maturitní zkoušky 2013/2014

Profilová část maturitní zkoušky 2013/2014 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

1. Průběh funkce. 1. Nejjednodušší řešení

1. Průběh funkce. 1. Nejjednodušší řešení 1. Průběh funkce K zobrazení průběhu analytické funkce jedné proměnné potřebujeme sloupec dat nezávisle proměnné x (argumentu) a sloupec dat s funkcí argumentu y = f(x) vytvořený obvykle pomocí vzorce.

Více

IAJCE Přednáška č. 8. double tprumer = (t1 + t2 + t3 + t4 + t5 + t6 + t7) / 7; Console.Write("\nPrumerna teplota je {0}", tprumer);

IAJCE Přednáška č. 8. double tprumer = (t1 + t2 + t3 + t4 + t5 + t6 + t7) / 7; Console.Write(\nPrumerna teplota je {0}, tprumer); Pole (array) Motivace Častá úloha práce s větším množstvím dat stejného typu o Př.: průměrná teplota za týden a odchylka od průměru v jednotlivých dnech Console.Write("Zadej T pro.den: "); double t = Double.Parse(Console.ReadLine());

Více

Název předmětu: Školní rok: Forma studia: Studijní obory: Ročník: Semestr: Typ předmětu: Rozsah a zakončení předmětu:

Název předmětu: Školní rok: Forma studia: Studijní obory: Ročník: Semestr: Typ předmětu: Rozsah a zakončení předmětu: Plán předmětu Název předmětu: Algoritmizace a programování (PAAPK) Školní rok: 2007/2008 Forma studia: Kombinovaná Studijní obory: DP, DI, PSDPI, OŽPD Ročník: I Semestr: II. (letní) Typ předmětu: povinný

Více

Projekt Obrázek strana 135

Projekt Obrázek strana 135 Projekt Obrázek strana 135 14. Projekt Obrázek 14.1. Základní popis, zadání úkolu Pracujeme na projektu Obrázek, který je ke stažení na http://java.vse.cz/. Po otevření v BlueJ vytvoříme instanci třídy

Více

Knihovna XmlLib TXV 003 63.01 první vydání prosinec 2010 změny vyhrazeny

Knihovna XmlLib TXV 003 63.01 první vydání prosinec 2010 změny vyhrazeny Knihovna XmlLib TXV 003 63.01 první vydání prosinec 2010 změny vyhrazeny 1 TXV 003 63.01 Historie změn Datum Vydání Popis změn Prosinec 2010 1 První vydání, popis odpovídá XmlLib_v13 OBSAH 1 Úvod...3 2

Více

MySQLi (objektově) Příklad vytvoření instance třídy včetně parametrů pro připojení: $mysqli = new mysqli('localhost', 'login', 'heslo', 'databaze');

MySQLi (objektově) Příklad vytvoření instance třídy včetně parametrů pro připojení: $mysqli = new mysqli('localhost', 'login', 'heslo', 'databaze'); MySQLi (objektově) Rozšíření PHP MySQL - základní rozšíření umožňující práci s MySQL. Doporučuje se ho používat pouze do verze MySQL 4.1.3. I když je funkční i u novějších verzí, neumožňuje využití nových

Více

7. Datové typy v Javě

7. Datové typy v Javě 7. Datové typy v Javě Primitivní vs. objektové typy Kategorie primitivních typů: integrální, boolean, čísla s pohyblivou řádovou čárkou Pole: deklarace, vytvoření, naplnění, přístup k prvkům, rozsah indexů

Více

Koncept pokročilého návrhu ve VHDL. INP - cvičení 2

Koncept pokročilého návrhu ve VHDL. INP - cvičení 2 Koncept pokročilého návrhu ve VHDL INP - cvičení 2 architecture behv of Cnt is process (CLK,RST,CE) variable value: std_logic_vector(3 downto 0 if (RST = '1') then value := (others => '0' elsif (CLK'event

Více

Datový typ POLE. Jednorozmrné pole - vektor

Datový typ POLE. Jednorozmrné pole - vektor Datový typ POLE Vodítkem pro tento kurz Delphi zabývající se pedevším konzolovými aplikacemi a základy programování pro mne byl semestr na vysoké škole. Studenti nyní pipravují semestrální práce pedevším

Více

Už známe datové typy pro representaci celých čísel i typy pro representaci

Už známe datové typy pro representaci celých čísel i typy pro representaci Dlouhá čísla Tomáš Holan, dlouha.txt, Verse: 19. února 2006. Už známe datové typy pro representaci celých čísel i typy pro representaci desetinných čísel. Co ale dělat, když nám žádný z dostupných datových

Více

Kolekce, cyklus foreach

Kolekce, cyklus foreach Kolekce, cyklus foreach Jen informativně Kolekce = seskupení prvků (objektů) Jednu již známe pole (Array) Kolekce v C# = třída, která implementuje IEnumerable (ICollection) Cyklus foreach ArrayList pro

Více

Knihovna XmlLib TXV 003 63.01 druhé vydání říjen 2012 změny vyhrazeny

Knihovna XmlLib TXV 003 63.01 druhé vydání říjen 2012 změny vyhrazeny Knihovna XmlLib TXV 003 63.01 druhé vydání říjen 2012 změny vyhrazeny 1 TXV 003 63.01 Historie změn Datum Vydání Popis změn Prosinec 2010 1 První vydání, popis odpovídá XmlLib_v13 Říjen 2012 2 Druhé vydání,

Více

ŠVP Gymnázium Ostrava-Zábřeh. 4.8.16. Úvod do programování

ŠVP Gymnázium Ostrava-Zábřeh. 4.8.16. Úvod do programování 4.8.16. Úvod do programování Vyučovací předmět Úvod do programování je na naší škole nabízen v rámci volitelných předmětů v sextě, septimě nebo v oktávě jako jednoletý dvouhodinový kurz. V případě hlubšího

Více

Popis funkcí a parametrů programu. Reliance External communicator. Verze 1.5.0

Popis funkcí a parametrů programu. Reliance External communicator. Verze 1.5.0 Popis funkcí a parametrů programu Reliance External communicator Verze 1.5.0 Copyright 2003-2007 GEOVAP, spol. s r.o.,čechovo nábřeží 1790, 530 03 Pardubice tel: +420 466 024 617, fax:+420 466 210 314,

Více

ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094

ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094 10 ROZHODOVACÍ PROCEDURY A VERIFIKACE PAVEL SURYNEK, KTIML HTTP://KTIML.MFF.CUNI.CZ/~SURYNEK/NAIL094 Matematicko-fyzikální fakulta Univerzita Karlova v Praze 1 ROZHODOVÁNÍ TEORIÍ POMOCÍ SAT ŘEŠIČE (SMT)

Více

Tematický celek 03 - Cvičné příklady

Tematický celek 03 - Cvičné příklady Tematický celek 03 - Cvičné příklady Cvičný 1 Dim a As Object Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Proceruda tlačítka "Vlož obsah

Více

Základní datové struktury

Základní datové struktury Základní datové struktury Martin Trnečka Katedra informatiky, Přírodovědecká fakulta Univerzita Palackého v Olomouci 4. listopadu 2013 Martin Trnečka (UPOL) Algoritmická matematika 1 4. listopadu 2013

Více

IUJCE 07/08 Přednáška č. 4. v paměti neexistuje. v paměti existuje

IUJCE 07/08 Přednáška č. 4. v paměti neexistuje. v paměti existuje Konstanty I možnosti: přednostně v paměti neexistuje žádný ; o preprocesor (deklarace) #define KONSTANTA 10 o konstantní proměnná (definice) const int KONSTANTA = 10; příklad #include v paměti

Více

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni!

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni! Java práce s řetězci Trochu povídání.. Řetězce jsou v Javě reprezentovány instancemi tříd StringBuffer a String. Tyto třídy jsou součástí balíčku java.lang, tudíž je možno s nimi pracovat ihned bez nutného

Více

2 Datové typy v jazyce C

2 Datové typy v jazyce C 1 Procedurální programování a strukturované programování Charakteristické pro procedurální programování je organizace programu, který řeší daný problém, do bloků (procedur, funkcí, subrutin). Původně jednolitý,

Více

Abstraktní datové typy: zásobník

Abstraktní datové typy: zásobník Abstraktní datové typy: zásobník 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 Abstraktní datové typy omezené rozhraní

Více

WICHTERLOVO GYMNÁZIUM, OSTRAVA-PORUBA. Programování MATURITNÍ OTÁZKY

WICHTERLOVO GYMNÁZIUM, OSTRAVA-PORUBA. Programování MATURITNÍ OTÁZKY WICHTERLOVO GYMNÁZIUM, OSTRAVA-PORUBA Programování MATURITNÍ OTÁZKY Ostrava 2008 Tomáš Vejpustek 1 Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

Více

Použití inteligentních značek s informačními službami

Použití inteligentních značek s informačními službami Použití inteligentních značek s informačními službami Jan Fransen Podokno úloh Zdroje informací v aplikacích sady Microsoft Office 2003 umožňuje uživatelům snadno prohledávat množství integrovaných či

Více

Pokročilé programování v jazyce C pro chemiky (C3220) Vstup a výstup v C++

Pokročilé programování v jazyce C pro chemiky (C3220) Vstup a výstup v C++ Pokročilé programování v jazyce C pro chemiky (C3220) Vstup a výstup v C++ Proudy pro standardní vstup a výstup V jazyce C++ provádíme textový vstup a výstup prostřednictvím tzv. datových proudů Datové

Více

Programovací jazyk PASCAL Turbo

Programovací jazyk PASCAL Turbo Obsah 1 Programovací jazyk PASCAL Turbo 5 11 Základní prostředky pro zápis programu 5 111 Lexikální symboly jazyka 6 12 Struktura programu 7 13 Část definicí a deklarací 8 131 Deklarace návěští 8 132 Definice

Více

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Jazyk Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět Cílová skupina (ročník) Úroveň

Více

7.3 Diagramy tříd - základy

7.3 Diagramy tříd - základy 7.3 Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'

Více

4.4.2012. Obsah přednášky. Příkaz for neúplný. Příkaz for příklady. Cyklus for each (enhanced for loop) Příkaz for příklady

4.4.2012. Obsah přednášky. Příkaz for neúplný. Příkaz for příklady. Cyklus for each (enhanced for loop) Příkaz for příklady Základy programování (IZAPR, IZKPR) Přednáška 5 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 03 022, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky Příkazy cyklu -

Více

Seminář Java II p.1/43

Seminář Java II p.1/43 Seminář Java II Seminář Java II p.1/43 Rekapitulace Java je case sensitive Zdrojový kód (soubor.java) obsahuje jednu veřejnou třídu Třídy jsou organizovány do balíků Hierarchie balíků odpovídá hierarchii

Více

Seminární práce do předmětu: Bezpečnost informačních systémů. téma: IPsec. Vypracoval: Libor Stránský

Seminární práce do předmětu: Bezpečnost informačních systémů. téma: IPsec. Vypracoval: Libor Stránský Seminární práce do předmětu: Bezpečnost informačních systémů téma: IPsec Vypracoval: Libor Stránský Co je to IPsec? Jedná se o skupinu protokolů zabezpečujících komunikaci na úrovni protokolu IP (jak už

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

WR Reality. Web Revolution. Uživatelský manuál administračního rozhraní

WR Reality. Web Revolution. Uživatelský manuál administračního rozhraní WR Reality Web Revolution Uživatelský manuál administračního rozhraní Web Revolution s. r. o. 2010 WR Reality Administrace uživatelský manuál Praktický průvodce administrací webové aplikace WR Reality

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

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.16 Název materiálu: Anotace Autor Jazyk Očekávaný výstup 16 PHP- komplexní úloha Jednoduchá kniha návštěv webové stránky DUM prohloubí a zvnitřní u žáků zásady psaní kódu,

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.19 Název materiálu: 19 PHP- Základy práce s databází PHP 2. část MySQL (Aplikace knihovna) Anotace Autor Jazyk Očekávaný výstup DUM je žákům průvodcem vytvoření databáze knih

Více

ABSTRAKTNÍ DATOVÉ TYPY

ABSTRAKTNÍ DATOVÉ TYPY Jurdič Radim ABSTRAKTNÍ DATOVÉ TYPY Veškeré hodnoty, s nimiž v programech pracujeme, můžeme rozdělit do několika skupin zvaných datové typy. Každý datový typ představuje množinu hodnot, nad kterými můžeme

Více

Pantek Productivity Pack. Verify User Control. Uživatelský manuál

Pantek Productivity Pack. Verify User Control. Uživatelský manuál Pantek Productivity Pack Verify User Control Verze 2.5 29. října 2002 Obsah ÚVOD... 3 Charakteristika produktu... 3 Systémové požadavky... 3 Omezení... 3 Instalace... 4 Licencování... 4 KONFIGURACE...

Více

Z. Kotala, P. Toman: Java ( Obsah )

Z. Kotala, P. Toman: Java ( Obsah ) Z. Kotala, P. Toman: Java ( Obsah ) 13. Výjimky Výjimka (exception) je definována jako událost, která nastane během provádění programu a která naruší normální běh instrukcí. Výjimka je vyvolána například

Více

V případě jazyka Java bychom abstraktní datový typ Time reprezentující čas mohli definovat pomocí třídy takto:

V případě jazyka Java bychom abstraktní datový typ Time reprezentující čas mohli definovat pomocí třídy takto: 20. Programovací techniky: Abstraktní datový typ, jeho specifikace a implementace. Datový typ zásobník, fronta, tabulka, strom, seznam. Základní algoritmy řazení a vyhledávání. Složitost algoritmů. Abstraktní

Více

7. Dynamické datové struktury

7. Dynamické datové struktury 7. Dynamické datové struktury Java poskytuje několik možností pro uložení většího množství dat (tj. objektů či primitivních datových typů) v paměti. S nejjednodušší z nich, s polem, jsme se již seznámili.

Více

Ukazatel (Pointer) jako datový typ - proměnné jsou umístěny v paměti na určitém místě (adrese) a zabírají určitý prostor (počet bytů), který je daný

Ukazatel (Pointer) jako datový typ - proměnné jsou umístěny v paměti na určitém místě (adrese) a zabírají určitý prostor (počet bytů), který je daný Ukazatel (Pointer) jako datový typ - proměnné jsou umístěny v paměti na určitém místě (adrese) a zabírají určitý prostor (počet bytů), který je daný typem proměnné - ukazatel je tedy adresa společně s

Více

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ Úvod do problematiky VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ Databáze je uspořádaná množina velkého množství informací (dat). Příkladem databáze je překladový slovník, seznam PSČ nebo telefonní seznam. Databáze

Více

Volné stromy. Úvod do programování. Kořenové stromy a seřazené stromy. Volné stromy

Volné stromy. Úvod do programování. Kořenové stromy a seřazené stromy. Volné stromy Volné stromy Úvod do programování Souvislý, acyklický, neorientovaný graf nazýváme volným stromem (free tree). Často vynecháváme adjektivum volný, a říkáme jen, že daný graf je strom. Michal Krátký 1,Jiří

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

Středoškolská odborná činnost 2007/2008. Pokladní systém

Středoškolská odborná činnost 2007/2008. Pokladní systém Středoškolská odborná činnost 2007/2008 Obor 18 Informatika Pokladní systém Autor: Radim Laga Gymnázium JAK Komenského 169 688 31, Uherský Brod Sexta Uherský Brod, 2008 Zlínský Kraj Prohlašuji tímto, že

Více

1. Programování proti rozhraní

1. Programování proti rozhraní 1. Programování proti rozhraní Cíl látky Cílem tohoto bloku je seznámení se s jednou z nejdůležitější programátorskou technikou v objektově orientovaném programování. Tou technikou je využívaní rozhraní

Více

HODNOCENÍ VÝKONNOSTI ATRIBUTIVNÍCH ZNAKŮ JAKOSTI. Josef Křepela, Jiří Michálek. OSSM při ČSJ

HODNOCENÍ VÝKONNOSTI ATRIBUTIVNÍCH ZNAKŮ JAKOSTI. Josef Křepela, Jiří Michálek. OSSM při ČSJ HODNOCENÍ VÝKONNOSTI ATRIBUTIVNÍCH ZNAKŮ JAKOSTI Josef Křepela, Jiří Michálek OSSM při ČSJ Červen 009 Hodnocení způsobilosti atributivních znaků jakosti (počet neshodných jednotek) Nechť p je pravděpodobnost

Více

Vypsání konkurzu na BP/DP

Vypsání konkurzu na BP/DP Vypsání konkurzu na BP/DP 1. Pro vypsání konkurzu na téma bakalářské či diplomové práce zvolte (po přihlášení do Osobní administrativy UIS) v základní nabídce v modulu Moje výuka možnost Závěrečné práce.

Více

STATISTICA Téma 1. Práce s datovým souborem

STATISTICA Téma 1. Práce s datovým souborem STATISTICA Téma 1. Práce s datovým souborem 1) Otevření datového souboru Program Statistika.cz otevíráme z ikony Start, nabídka Programy, podnabídka Statistika Cz 6. Ze dvou nabídnutých možností vybereme

Více

Základy programování Proměnné Procedury, funkce, události Operátory a podmínková logika Objekt Range a Cells, odkazy Vlastnosti, metody a události

Základy programování Proměnné Procedury, funkce, události Operátory a podmínková logika Objekt Range a Cells, odkazy Vlastnosti, metody a události Petr Blaha Základy programování Proměnné Procedury, funkce, události Operátory a podmínková logika Objekt Range a Cells, odkazy Vlastnosti, metody a události Cykly Základní funkce (matematické, textové,

Více

1. Téma 12 - Textové soubory a výjimky

1. Téma 12 - Textové soubory a výjimky 1. Téma 12 - Textové soubory a výjimky Cíl látky Procvičit práci se soubory s využitím výjimek. 1.1. Úvod Program, aby byl programem, my mít nějaké výstupy a vstupy. Velmi častým případem je to, že se

Více

Knihovna WebGraphLib

Knihovna WebGraphLib Knihovna WebGraphLib TXV 003 58.01 první vydání květen 2010 změny vyhrazeny 1 TXV 003 58.01 Historie změn Datum Vydání Popis změn Březen 2010 1 První vydání, popis odpovídá WebGraphLib_v10 OBSAH 1 Úvod...3

Více

PB161 Programování v C++ Proudy pro standardní zařízení Souborové proudy Paměťové proudy Manipulátory

PB161 Programování v C++ Proudy pro standardní zařízení Souborové proudy Paměťové proudy Manipulátory PB161 Programování v C++ Proudy pro standardní zařízení Souborové proudy Paměťové proudy Manipulátory Výhody objektového řešení Nástroje pro IO operace jsou v C++ součástí knihoven Hierarchie objektových

Více

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů).

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů). Strojový kód k d a asembler procesoru MIPS Použit ití simulátoru SPIM K.D. - cvičení ÚPA 1 MIPS - prostředí 32 ks 32bitových registrů ( adresa registru = 5 bitů). Registr $0 je zero čte se jako 0x0, zápis

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

Gymnázium Vysoké Mýto nám. Vaňorného 163, 566 01 Vysoké Mýto

Gymnázium Vysoké Mýto nám. Vaňorného 163, 566 01 Vysoké Mýto Gymnázium Vysoké Mýto nám. Vaňorného 163, 566 01 Vysoké Mýto Registrační číslo projektu Šablona Autor Název materiálu / Druh CZ.1.07/1.5.00/34.0951 III/2 INOVACE A ZKVALITNĚNÍ VÝUKY PROSTŘEDNICTVÍM ICT

Více

Tato kapitola obsahuje několik zajímavých tipů, jak podobné operace uskutečnit. A pro začátek se zaměříme na hlavní panel Windows.

Tato kapitola obsahuje několik zajímavých tipů, jak podobné operace uskutečnit. A pro začátek se zaměříme na hlavní panel Windows. Hrátky s operačním systémem V této kapitole si ukážeme některé postupy, s jejichž pomocí je možné měnit určitá nastavení operačního systému, manipulovat s objekty pracovní plochy apod. Při psaní některých

Více

Iterátory v C++. int pole[20]; for (int *temp = pole, temp!= &pole[20]; temp++) { *temp = 0;

Iterátory v C++. int pole[20]; for (int *temp = pole, temp!= &pole[20]; temp++) { *temp = 0; Iterátory v C++. Iterátor v C++ je vlastně taková obdoba ukazatelů pro kontejnery. Dříve, než se dostaneme k bližšímu vysvětlení pojmu iterátor, ukážeme si jednoduchý příklad, jak pracovat s obyčejným

Více

Číslicové obvody a jazyk VHDL

Číslicové obvody a jazyk VHDL Číslicové obvody a jazyk VHDL Návrh počítačových systémů 2007-2008 Jan Kořenek korenek@fit.vutbr.cz Proč HW realizace algoritmu Vyšší rychlost paralelní nebo zřetězené zpracování, přizpůsobení výpočetních

Více

Architektura procesorů PC shrnutí pojmů

Architektura procesorů PC shrnutí pojmů Architektura procesorů PC shrnutí pojmů 1 Co je to superskalární architektura? Minimálně dvě fronty instrukcí. Provádění instrukcí je možné iniciovat současně, instrukce se pak provádějí paralelně. Realizovatelné

Více

Školení obsluhy PC stručný manuál obsluhy pro používání PC

Školení obsluhy PC stručný manuál obsluhy pro používání PC Školení obsluhy PC stručný manuál obsluhy pro používání PC tabulkový procesor MS EXCEL Zpracoval: mgr. Ježek Vl. Str. 1 MS EXCEL - základy tabulkového procesoru Tyto programy jsou specielně navrženy na

Více

FFUK Uživatelský manuál pro administraci webu Obsah

FFUK Uživatelský manuál pro administraci webu Obsah FFUK Uživatelský manuál pro administraci webu Obsah FFUK Uživatelský manuál pro administraci webu... 1 1 Úvod... 2 2 Po přihlášení... 2 3 Základní nastavení webu... 2 4 Menu... 2 5 Bloky... 5 6 Správa

Více

Programování a algoritmizace 1 2012-2013

Programování a algoritmizace 1 2012-2013 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Algoritmy Kdo je

Více

PHP a Large Objecty v PostgreSQL

PHP a Large Objecty v PostgreSQL PHP a Large Objecty v PostgreSQL Pavel Janík ml. http://www.janik.cz PHP a Large Objecty v PostgreSQL 1 Jazyk PHP je velmi mocným jazykem pro vývoj webových aplikací. Má podporu snad všech velkých i menších

Více

Comenius Logo. Princip programování. Prostředí Comenius Logo

Comenius Logo. Princip programování. Prostředí Comenius Logo Comenius Logo je objektově orientovaný programovací nástroj pracující v prostředí Windows. Byl vyvinut na Slovensku jako nástroj k výuce programování na základních školách. Rozvíjí tvořivost a schopnost

Více

Operační systémy. Správa paměti (SP) Požadavky na SP. Spojování a zavedení programu. Spojování programu (linking) Zavádění programu (loading)

Operační systémy. Správa paměti (SP) Požadavky na SP. Spojování a zavedení programu. Spojování programu (linking) Zavádění programu (loading) Správa paměti (SP) Operační systémy Přednáška 7: Správa paměti I Memory Management Unit (MMU) hardware umístěný na CPU čipu např. překládá logické adresy na fyzické adresy, Memory Manager software, který

Více

Datové typy strana 29

Datové typy strana 29 Datové typy strana 29 3. Datové typy Jak již bylo uvedeno, Java je přísně typový jazyk, proto je vždy nutno uvést datový typ datového atributu, formálního parametru metody, návratové hodnoty metody nebo

Více

13 Barvy a úpravy rastrového

13 Barvy a úpravy rastrového 13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody

Více

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA INFORMAČNÍ SYSTÉMY A DATOVÉ SKLADY Autosalón (semestrální projekt) ZS 2011-2012 Analýza Implementace Číslo skupiny: 2 Členové skupiny: Jmeno,příjmení,login

Více