Datové struktury a datové typy.

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

Download "Datové struktury a datové typy."

Transkript

1 Datové struktury a datové typy. Základní datové typy. Odvozené datové typy. Základní datové struktury. Odvozené datové struktury. Tomáš Bayer Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 1 / 53

2 Obsah přednášky 1 Základní datové typy 2 Datové struktury 3 Základní datové struktury Proměnná Pole Struktura Objekt 4 Odvozené datové struktury Seznam Zásobník Fronta Prioritní fronta Strom Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 2 / 53

3 Základní datové typy 1. Základní datové typy Přehled základních datových typů: celočíselné, logické, reálné a znakové. Nalezneme prakticky ve všech programovacích jazycích. U každého jednoduchého datového typu definována jeho velikost v bajtech a rozsah. Vyjádření v různých číselných soustavách: dvojková (binární) soustava: 0011, desítková (decimální) soustava (znaky 0-9): 1987, šestnáctková (hexadecimální) soustava (znaky 0-9, a-f): 16af. Celočíselné datové typy: Reprezentace diskrétních jevů. Se znaménky (signed) či bez znaménka (unsigned). Liší se rozsahem a přesností. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 3 / 53

4 Základní datové typy 2. Přehled celočíselných datových typů v Javě Rozsah představován maximální a minimální hodnotou, které může proměnná tohoto datového typu nabývat. Závisí na počtu bitů které jsou použity na uložení číselné hodnoty v paměti. Unsigned: (0, 2 n 1). Signed ( 2 n 1, 2 n 1 1). Pokud nevíme, jaký datový typ použít, a nemáme nějaké speciální požadavky, zpravidla používáme typ int. Datový typ Velikost Rozsah byte 8b -128;127 short 16b ;32767 int 32b -2E09;2E09 long 64b -9E18;9E18 Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 4 / 53

5 3. Znakový typ Základní datové typy Datový typ char. Používán pro práci se znaky, různá kódování a sady znaků. Má vlastnosti celočíselného datového typu bez znaménka, jeho hodnota odpovídá kódu příslušného znaku v ASCII tabulce. Na jednotlivé znaky se lze dívat jako na celá čísla, lze na ně aplikovat stejné aritmetické či relační operátory jako na datový typ int. Nabývá hodnot (0, 2 8 1). Zápis znakového typu: znakem uzavřeným do apostrofů: char c='a'; prostřednictvím escape sekvencí: char c='\n'; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 5 / 53

6 Základní datové typy 4. Kódování ASCII (American Standard Code for Information Interchange): 127 znaků (písmena, číslice, spec. znaky), 7b + 1b. Problémy s ČJ, celkem 6 speciálních kódování: CP 1250, ISO , Latin 2... UNICODE: 16b kódování, 2 nástupce ASCII, znaků, např. UTF-8. Ukázka Escape sekvencí: Escape sekvence UNICODE Význam \n \u000a Nová řádka \r \u000d Návrat na začátek řádku \t \u0009 Tabulátor \\ \u005c Zpětné lomítko \' \u002c Apostrof \" \u0022 Uvozovky Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 6 / 53

7 5. ASCII tabulka Základní datové typy Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 7 / 53

8 Základní datové typy 6. Logický datový typ Datový typ bool, (v Javě boolean). Nabývá dvou hodnot: pravda true, nepravda false. Obě hodnoty lze vyjádřit prostřednictvím celočíselných hodnot: Příklad: 1=true 0=false. boolean result=false; boolean result=0; Uplatňuje se zejména při konstrukci logických podmínek. if (result==true) if (result) Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 8 / 53

9 Základní datové typy 7. Reálné datové typy Reálná čísla R které lze vyjádřit nekonečně dlouhým desetinným rozvojem, jsou představována desetinnými čísly. Používána pro vyjádření spojitých jevů. Výpočty v pomalejší než nad celými čísly. Důležitá volba správného datového typu. Zápis reálných čísel: 2 formy zápisu. S pevnou řádovou čárkou (Fixed-point). Proměnná relativní chyba, malá čísla zatížena větší chybou V semilogaritmickém tvaru (Floating-point). Příliš malá nebo příliš velká čísla, stejná relativní chyba. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 9 / 53

10 Základní datové typy 8. Reálné datové typy v Javě Pro vědecké výpočty používáme datový typ double (s dvojnásobnou přesností). Při výpočtu s datovým typem float dochází k značným zaokrouhlovacím chybám. float: 7 platných desetinných míst double: 15 platných desetinných míst Datový typ Velikost Rozsah float 32b -1.4E45;3.4E48 double 64b -4.9E-324,1.7E308; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 10 / 53

11 Datové struktury 9. Datové struktury Data používaná programy v paměti uchovávána v datových strukturách. Data lze reprezentovat různými datovými typy. Pro efektivní práci s daty nutné zvolit vhodnou datovou strukturu a odpovídající datový typ. Dělení datových struktur: Datové struktury děleny do dvou kategorií: Základní datové struktury: Vyskytují se téměř ve všech programovacích jazycích. Za běhu programu nemění svůj rozsah. Odvozené datové struktury: Nazývány jako abstraktní datové struktury. Často implementovány jako objekty. Za běhu programu mohou měnit svůj rozsah. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 11 / 53

12 Datové struktury 10. Dělení datových struktur Dělení do dvou skupin: Základní datové struktury: Proměnná (Variable). Pole (Array). Struktura (Structure). Objekt (Object). Odvozené datové struktury: Seznam (List). Strom (Tree). Zásobník (Stack). Fronta (Query). Tabulka (Table). Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 12 / 53

13 Proměnná 11. Proměnná Pojmenované místo v paměti počítače. Je v ní uložena hodnota určitého datového typu. Deklarace proměnné: Proměnné vytvářeny pomocí deklarace. V deklaraci uveden datový typ proměnné a její identifikátor. int i; double k; Typ proměnné: Specifikace typu proměnné ovlivňuje: A) Určuje množinu hodnot, kterých proměnná může nabývat. B) Množství paměti potřebné pro její uložení. C) Operace, které lze s proměnnou provádět. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 13 / 53

14 12. Schéma paměti Základní datové struktury Proměnná Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 14 / 53

15 Proměnná 13. Alokace paměti Způsob, jakým je proměnným přidělován pamět ový prostor v RAM. 3 metody alokace paměti Statická alokace. Alokace na zásobníku. Alokace na haldě. Statická alokace paměti: Pamět přidělena pevně na celou dobu běhu programu. Přidělování paměti realizováno již v době překladu. Rozsah datových struktur musí být znám již v době překladu, což není vždy možné. Práce s proměnnými velmi rychlá a efektivní. Používáno pro proměnné deklarované v hlavním programu. double x; int cislo; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 15 / 53

16 Proměnná 14. Alokace na zásobníku Zásobník (Stack). Používána pro lokální proměnné, které jsou deklarovány v procedurách či funkcích či při rekurzi. Pamět je alokována při volání procedury/funkce, po jejím ukončení je uvolněna. Lokální proměnné zanikají, jejich hodnoty jsou nedostupné. Dochází k úspoře paměti, nepotřebné proměnné nezabírají místo. Uvolňování úseků paměti prováděno v opačném pořadí než jejich přidělování. Nedochází ke fragmentaci paměti. Nejrychlejší... Při překročení kapacity zásobníku chyba Stack Overflow. double dist(double a, double b) { double d=math.sqrt(a*a+b*b); return d; } Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 16 / 53

17 Proměnná 15. Dynamická alokace paměti Dynamická alokace na haldě (Heap, realizován binárním stromem): Pamět přidělována na žádost programu operačním systémem, nikoliv kompilátorem. Na tyto úseky se odkazujeme pomocí speciálních proměnných typu ukazatel (pointer). Nepotřebná pamět není uvolňována implicitně, musí provést uživatel či Garbage Collector. Uvolňování úseků paměti nemusí být prováděno v opačném pořadí než její přidělování, dochází k fragmentaci paměti. Při překročení kapacity haldy chyba Heap Overflow. Point p=new Point(100,100); Výhody dynamické alokace: Proměnné existují jen po dobu, kdy jsou potřeba. Možnost vytvářet dynamické datové struktury potřebné velikosti za běhu programu. Jejich velikost nemusí být známa v době překladu. Nevýhody dynamické alokace: Dynamicky alokované proměnné nemají svůj jednoznačný identifikátor, přístup prostřednictvím ukazatele. Pomalejší přístup k datům než u statické alokace. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 17 / 53

18 Proměnná 16. Problémy při dynamické alokaci Důsledky nevhodné práce s dynamicky alokovanou pamětí: Přístup na nealokované místo v paměti Přepsání vlastních dat či havárie programu. Zpravidla vede k pádu nebo si přepsání vlastních dat. Přístup do uvolněné paměti Zpravidla vede k pádu programu. Neuvolnění paměti Při náročných výpočetních procesech může nastat nedostatek paměti vedoucí k pádu aplikace. Většinou se chyba nijak neprojeví. Operační systém po skončení běhu programu tuto pamět uvolní. Opakované uvolňování téže paměti Opakované volání destruktoru. Zpravidla vede k pádu aplikace. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 18 / 53

19 17. Druhy proměnných Proměnná Proměnné se liší dle způsobu přidělování paměti: Globální proměnné: Vytvořeny při spuštění programu, zanikají po ukončení programu. Existují po celou dobu běhu programu. Nazývány jako statické proměnné. Lokální proměnné: Deklarované ve funkcí či procedurách. Vznikají v okamžiku volání procedury/funkce, zanikají při ukončení procedury/funkce. Existují pouze po dobu běhu procedury/funkce. Nazývány jako automatické proměnné, alokovány v zásobníku. Dynamické proměnné: Vznikají za běhu programu na základě provedené alokace paměti příkazem. Mohou zanikat automaticky nebo manuálně (příkazem). Nejsou vázány na procedury/funkce. Tomáš Alokovány Bayer heapu. (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 19 / 53

20 Proměnná 18. Přiřazovací příkaz Přiřazuje proměnné hodnotu odpovídajícího datového typu. Dochází k inicializaci hodnoty proměnné. i = 10; k = 13; Proměnné vystupují: v aritmetických operacích (výrazy) dist = sqrt((xb - xa) * (xb - xa) + (yb - ya) * (yb - ya)); v logických operacích (podmínky) if (eps > 0) předávány jako parametry funkcí či procedur distance (xa, ya, xb, ya); Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 20 / 53

21 19. Konstanty Základní datové struktury Proměnná Číselné údaje, jejichž hodnota se nemění. V praxi např. π, e, g, c, i. Konstanty celočíselné, reálné, znakové a řetězcové konstanty. Celočíselné konstanty: Celočíselné konstanty lze zapisovat v osmičkové, desítkové či šestnáctkové soustavě. Desítková soustava: 9234 Osmičková soustava: 0156 //Zacina nulou Šestnáctková soustava: 0x26AF //Zacina 0x Konstanty jsou standardně datového typu int. R = ; Hodnota typu long, za číselnou hodnotou symbol L. A = L; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 21 / 53

22 20. Znakové konstanty Lze je zapsat následujícími způsoby. Proměnná Jedním znakem uzavřeným do apostrofů: 'A' 'B' 'C' Číselnou hodnotou v ASCII tabulce (osmičková, šestnáctková soustava): '\101' '\102' '\103' //osmickova '\41' '\42' '\43' //sestnactkova Zápis speciálních znaků '\n' '\r' '\\' '\' Posloupností znaků \ uxxxx, kde XXXX představuje kód znaku v kódování UNICODE: '\u000a' Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 22 / 53

23 Proměnná 21. Reálné konstanty Lze je zapsat následujícími způsoby. S pevnou řádovou čárkou: V semilogaritmickém tvaru e e-1 Reálná konstanta je standardně datového typu double. Zápis v datovém typu float, za poslední číslici umístěn znak F. A = 0.1e10F; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 23 / 53

24 22. Řetězcové konstanty Proměnná Zapisuje se jako posloupnost znaků uzavřená v uvozovkách. Pro tvorbu řetězcových konstant platí stejné zákonitosti jako pro tvorbu znakových konstant. Řetězcové konstanty mohou být na rozdíl od znakové konstanty tvořeny více než jedním znakem. Lze je zapsat následujícími způsoby. Jeden či více znaků do uvozovek (nikoliv do apostrofů). "Ahoj"; Hodnoty v ASCII/UNICODE tabulce: "Prvn\u00ED program\n v jazyce Java"; Sčítání řetězcových konstant prostřednictvím operátoru +. "prvni slovo"+"druhe slovo"; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 24 / 53

25 Proměnná 23. Přetypování Při přiřazovacích operacích dochází ke konverzím mezi různými datovými typy přetypování. Přiřazovaná hodnota (na pravé straně) je konvertována na typ proměnné jíž přiřazujeme (na levé straně). Výsledkem změna datového typu proměnné. Varianty přetypování: Přiřazení reálné hodnoty celočíselné celočíselné hodnotě: Hodnota zaokrouhlena odříznutím desetinné části (nedochází k zaokrouhlení podle standardních pravidel!) Přiřazení hodnoty s vyšší přesností do proměnné s nižší přesností: Pokud hodnota mimo rozsah výsledného datového typu, může vést k nedefinovatelnému výsledku Implicitní vs. explicitní přetypování. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 25 / 53

26 Proměnná 24. Implicitní a explicitní přetypování Implicitní přetypování Přetypování proměnné s nižším rozsahem na proměnnou s vyšším rozsahem. Probíhá automaticky, nedochází při ní ke ztrátě informací. Pořadí: byte->short->int->long->float->double. float a = 50; double b = 30; b = a;//implicitni konverze Explicitní přetypování Přetypování proměnné s vyšším rozsahem na proměnnou s nižším rozsahem. Neproběhne automaticky,nutno vynutit ji uvedením cílového datového typu. Dochází ke ztrátě informací. Pořadí: double->float->long->int->short->byte. a = b;//ztrata presnosti, nelze provest a = (float)b;//explicitni konverze Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 26 / 53

27 25. Smíšené konverze Proměnná Nastávají, pokud do aritmetických operací vstupují operandy smíšeného typu. Cílem co nejmenší ztráta přesnosti při aritmetických operacích. Zákonitosti: A) Pokud je jeden z operandů typu double, bude výsledkem operace datový typ double. B) Pokud je jeden z operandů typu float, bude výsledkem operace datový typ float. C) Pokud je jeden z operandů typu long, bude výsledkem operace datový typ long. Pozor na zlomky: int a = 5;//int int b = 10;//int int c = a / b;//vysledek=0 Správně: int a = 5.0;//double int b = 10;//int Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 27 / 53

28 Proměnná 26. Aritmetické operátory Slouží k realizaci základních aritmetických operacích. Vyhodnocování z leva do prava dle priority: A) nejprve operace násobení/dělení/celočíselné dělení, B) poté se vyhodnotí zbývající operace. Změna priority vyhodnocování s použitím závorek. Počet pravých a levých závorek by měl být stejný. int a = * 3;//a=12 int a = (3 + 3) * 3;//18 Přehled aritmetických operátorů: Operátor Popis + Sčítání - Odečítání * Násobení / Dělení % Zbytek po celočíselném dělení. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 28 / 53

29 27. Operátory přiřazení Proměnná Zkrácený zápis běžných aritmetických operací. Umožňuje efektivnější zápis aritmetických operací. Přehled operátorů přiřazení. Operátor a+=5 a-=5 a*=5 a/=5 Úplný zápis a=a+5 a=a-5 a=a*5 a=a/5 Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 29 / 53

30 Proměnná 28. Operátory inkrementace a dekrementace Zvyšování či snižování hodnoty proměnné o 1. Představují zdvojené operátory ++ resp.. Předcházející inkrementace/dekrementace: Operátory inkrementace/dekrementace umístěny před proměnnou. Nejprve se provede inkrementace/dekrementace, poté přiřazovací příkaz. int a = 5, b = 5; int c = ++a;//a=6, c=5; int d = --b;//b=4, d=5; Následná inkrementace/dekrementace: Operátory inkrementace/dekrementace umístěny za proměnnou. Nejprve se provede přiřazovací příkaz, poté inkrementace/dekrementace. int a = 5, b=5; int c = a++;//a=6, c=6; int d = b--;//b=4, d=4; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 30 / 53

31 Proměnná 29. Relační operátory Použití při konstrukci logických podmínek. Binární i unární booleovské operátory. Různá priorita, nejvyšší negace, poté konjunkce, ostatní. Změna pořadí závorkami. Přehled relačních operátorů: Operátor Popis == Rovná se!= Nerovná se && Logický součin Logický součet! Negace < Menší > Větší <= Menší nebo rovno >= Větší nebo rovno Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 31 / 53

32 30. Pole Základní datové struktury Pole Posloupnost proměnných stejného typu uložených v paměti chápaných jako jeden celek. Každé pamět ové místo reprezentováno prvkem pole. K prvku pole přistupujeme prostřednictvím indexu, Index pole nesmí být překročen! Deklarace pole: Uváděn datový typ, identifikátor, počet prvků pole. Jednorozměrné pole: Prvky pole tvoří proměnné, nikoliv pole nějakého jiného pole. Představuje ho n prvků s indexy 0,..., n 1. double pole[10]; //deklarace pole s deseti prvky pole[0]; //prvni prvek pole pole[9]; //posledni prvek pole Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 32 / 53

33 31. Vícerozměrné pole Pole Pole označováno jako N-rozměrné. Prvky N-rozměrného pole tvoří prvky (N 1)-rozměrného pole. Nejčastěji používáno dvojrozměrné pole, N = 2. Prvky dvojrozměrného pole tvoří prvky jednorozměrného pole. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 33 / 53

34 32. Dvojrozměrné pole Pole Tvořeno m řádky a n sloupci, představuje matici. Řádkový index: 0,..., m 1. Sloupcový index: 0,..., n 1. Nejrychleji se mění poslední index, tj index nejvíce vpravo. Deklarace dvourozměrného pole: double pole[6][11]; //deklarace 2D pole 6x10 prvku pole[0][0]; //prvni prvek pole pole[5][10]; //posledni prvek pole Využití dvojrozměrných polí: reprezentace tabulek, rastrů. Pro práci s poli používány cykly (opakování činností). V některých jazycích pole deklarována jako dynamické proměnné. Operace s 1D neuspořádaným polem (přístup, hledání) jsou prováděny v lineárním čase, s 2D neuspořádaným polem v kvadratickém čase. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 34 / 53

35 Pole 33. Pole v Javě S polem v Javě pracujeme prostřednictvím odkazu (tj. podobně jako s objekty). 2 kroky: Deklarace odkazu na pole Ve tvaru datovy_typ [] identifikator. Neuvádíme počet prvků. double [] pole; S polem zatím nelze pracovat, nebyla alokována pamět vyvolání výjimky. Alokace paměti Vytvoření vlastního pole přidělení potřebné paměti, uvádíme počet prvků. Nastavení odkazu tak, aby ukazoval na vytvořené pole. pole=new double[10]; Oba kroky lze spojit do jednoho: double [] pole=new double[10]; Prvky pole celočíselného/ reálného typu automaticky inicializovány na hodotu 0, prvky polí odkazů (tj. referencí) inicializovány na hodnotu null. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 35 / 53

36 Pole 34. Ilustrace práce s polem v Javě Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 36 / 53

37 Pole 35. Další operace s polem v Javě Délka pole: Představuje počet prvů, lze zjistit prostřednictvím length. pole.length; Hodnota length-1 je nastavována jako nejvyšší horní index pole. pole[pole.length-1]; //Posledni prvek pole pole[pole.length]; //Prekrocen index, prace s nealokovanou Inicializované pole: Pole inicializované předem danými hodnotami, nepoužívá se konstrukce s new (pouze konvence). double [] pole={2.0, 4.4,17.85}; //1D pole double [][] pole2d={{2.0, 4.4},{17.85, 0.3}, {10.9, 6.4}}; Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 37 / 53

38 36. Kopírování polí v Javě Pole Nelze použít přiřazovací příkaz, provádí kopírování odkazů, nikoliv kopírování skutečného obsahu polí. int [] pole1={1,2,3}; int [] pole2=new int [3]; pole2=pole1;//zkopirovani odkazu, nikoliv obsahu pole! Kopírování obsahu pole po prvku int [] pole1={1,2,3}; int [] pole2=new int [3]; for (int i=0;i<pole1.length;i++) pole2[i]=pole1[i]; Použití příkazu arraycopy arraycopy(zdroj,pocat_index,cil,cilovy_index,pocet_prvku); Ukázka kopie dvou polí int [] pole1={1,2,3}; int [] pole2=new int [3]; System.arraycopy(pole1,0,pole2,0,pole1.length); Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 38 / 53

39 37. Ukázka nevhodného kopírování polí Pole Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 39 / 53

40 38. Ukázka správného kopírování polí Pole Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 40 / 53

41 39. Struktura (Záznam) Struktura Skupina proměnných různých typů, které se dohromady chovají jako celek. Na rozdíl od pole se jedná o strukturu heterogenní. Deklarace struktury: Jednotlivé položky struktury deklarovány jako samostatné proměnné. struct Point { double x, y; }; //Ukoncena strednikem //Bod ma souradnice x,y Při práci se strukturami je používán princip kvalifikace. Nejprve vytvořena proměnná datového typu struktury. Pro přístup k jednotlivým složkám struktury používáme proměnnou datového typu struktury doplněnou jménem proměnné. Point p; //Promenna typu point p.x= ; //nastaveni souradnice x p.y= ; //Nastaveni souradnice y Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 41 / 53

42 Objekt 40. Objekt V objektově orientovaném programování objekty představují komponenty nehmotného charakteru. Jsou abstrakcí a zjednodušením svých hmotných protějšků. Vykazují určité vlastnosti a chování. Rozhraní objektu: umožňuje vzájemnou komunikaci objektů. Podrobnosti v kapitole věnované OOP. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 42 / 53

43 41. Rozhraní objektu Základní datové struktury Objekt Objekt tvořen: Datovou strukturou Představována proměnnými různých datových typů. Ovlivňuje vlastnosti objektu. Tato část objektu bývá označována jako soukromá, z vnějšku je před jinými objekty ukryta (princip zapouzdření). Metodami Definují operace, které je možno s daty provádět. Určují chování objektu. Tato část objektu bývá označována jako veřejná. Patří mezi dynamické proměnné: vytvářeny a rušeny na pokyn programátora v libovolný okamžik. S dynamicky vytvořenými objekty pracujeme ve speciální části paměti zvané halda (heap). Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 43 / 53

44 42. Seznam Odvozené datové struktury Seznam Datová struktura, tvoří ji uspořádaná posloupnost položek. Položky uspořádány podle určité hodnoty, tzv. klíče. Jednotlivé položky nemusejí být umístěny přímo za sebou každá položka obsahuje odkaz na následující položku. Patří mezi rekurzivní struktury, každá položka obsahuje odkaz na položku stejného typu. Vlastnost seznamu: Rychlé přidávání prvků na počátek/konec seznamu (O(N)). Vhodný pro procházení prvků popořadě sekvenční uspořádání dat. Nevhodný pro náhodný přístup k prvkům. Typy seznamů: Jednosměrný seznam Obousměrný seznam Kruhový seznam Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 44 / 53

45 Odvozené datové struktury 43. Ukázky seznamů. Seznam Jednosměrný seznam: každý prvek seznamu odkazuje na předchozí resp. následující prvek seznamu. První resp. poslední prvek seznamu neodkazuje nikam (NULL). Obousměrný seznam: každý prvek seznamu obsahuje odkaz na předchozí a následující prvek seznamu. První a poslední prvek seznamu neodkazují nikam (NULL). Kruhový seznam: jednosměrný i obousměrný. Poslední prvek seznamu pak obsahuje odkaz na první prvek seznamu, resp. první prvek seznamu obsahuje odkaz na poslední prvek seznamu. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 45 / 53

46 Odvozené datové struktury Zásobník 44. Zásobník Ze zásobníku odebíráme data v opačném pořadí, než v jakém jsme je do něj uložili. Pracovat lze pouze s prvkem, který je na vrcholu zásobníku. Reprezentuje model LIFO (Last In - First Out). V běžném životě model zásobníku např. batoh, vyndaváme z něj věci v opačném pořadí, než je do něj ukládáme. Použití při zpracovávání dat v sekvenčním pořadí. Dno zásobníku: Nejspodnější prvek v zásobníku. Přidán do zásobníku jako první. Vrchol zásobníku: Nejvrchnější prvek v zásobníku. Přidán do zásobníku jako poslední. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 46 / 53

47 Odvozené datové struktury 45. Ukázka zásobníku Zásobník Použití: náhrada rekurze, vyhodnocování výrazů... Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 47 / 53

48 Odvozené datové struktury Fronta 46. Fronta Z fronty odebíráme data ve stejném pořadí, v jakém jsem je do ní uložili. Pracovat lze pouze s prvkem, který je na čele fronty. Reprezentuje model FIFO (First In-First Out). Využití při sekvenčním zpracování dat. Ve frontě nemůžeme předbíhat. Existuje i fronta s předbíháním, tzv. prioritní fronta. Konec fronty: Prvek na poslední pozici ve frontě. Do fronty přidán jako poslední. Čelo fronty: Prvek na první pozici ve frontě, Do fronty přidán jako první. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 48 / 53

49 Odvozené datové struktury Fronta 47. Ukázka fronty a kruhové fronty Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 49 / 53

50 Odvozené datové struktury Prioritní fronta 48. Prioritní fronta Nazývána fronta s předbíháním. Charakteristika prioritní fronty: Varianta fronty, u které hraje roli ohodnocení prvku. Ohodnocení realizováno ohodnocovací funkcí. Prvek s vyšší prioritou může přeběhnout prvek s nižší prioritou. Princip prioritní fronty: 1 Prvky přidávány do fronty v pořadí, v jakém jsou na vstupu. 2 Prvky odebírány z fronty na základě ohodnocení (priority prvku). Prvky s nejvyšší prioritou odebrány jako první. Časté použití v geoinformatice, souvislost s technikou Sweep Line (zametací přímka). Ohodnocením např. souřadnice x, y, vzdálenost, váha, atd. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 50 / 53

51 Odvozené datové struktury Strom 49. Strom Takové uspořádání dat, kdy každý prvek má nejvýše jednoho předchůdce a může mít více než jednoho následníka. Strom tvořen vrcholy (uzly). Typy uzlů: Listy: Uzly bez následníka. Není k nim připojen žádný podstrom. Kořen: Uzel bez předchůdce=kořen. Existuje právě 1. Vnitřní uzly: Uzly, které nejsou listem ani kořenem. Patří mezi rekurzivní datové struktury: každý uzel je současně kořenem stromu a zároveň listem stromu vyšší úrovně. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 51 / 53

52 50. Dělení stromů Odvozené datové struktury Strom Podle maximálního počtu potomků, stupeň uzlu n. Unární strom: n = 1 (Seznam). Binární strom: n = 2. Ternární strom: n = 3. Stromy vyšších řádů se zpravidla nepoužívají. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 52 / 53

53 Odvozené datové struktury Strom 51. Uspořádání dat v binárním stromu Pro každý uzel U platí, že všechny údaje v levém podstromu jsou menší než U a všechny údaje v pravém podstromu větší než U. Tato organizace umožňuje efektivní práci s daty uloženými ve stromu: např. vyhledávání se složitostí O(log(N)). Ukázka binárního stromu. Tomáš Bayer (Katedra aplikované Datové struktury geoinformatiky a datové a kartografie, typy. Přírodovědecká fakulta UK.) 53 / 53

Algoritmizace a programování

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

Více

Algoritmizace a programování

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

Více

Paměť počítače. alg2 1

Paměť počítače. alg2 1 Paměť počítače Výpočetní proces je posloupnost akcí nad daty uloženými v paměti počítače Data jsou v paměti reprezentována posloupnostmi bitů (bit = 0 nebo 1) Připomeňme: paměť je tvořena řadou 8-mi bitových

Více

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 Procesor Procesorem je objekt, který vykonává algoritmem popisovanou

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

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4 Uložení dat v počítači Data = užitečné, zpracovávané informace Kódování (formát) dat = způsob uložení v počítači (nutno vše převést na čísla ve dvojkové soustavě) Příklady kódování dat Text každému znaku

Více

Čísla a číselné soustavy.

Čísla a číselné soustavy. Čísla a číselné soustavy. Polyadické soustavy. Převody mezi soustavami. Reprezentace čísel. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK.

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

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

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

Více

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

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

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

Algoritmizace a programování

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

Více

Ukazka knihy z internetoveho knihkupectvi www.kosmas.cz

Ukazka knihy z internetoveho knihkupectvi www.kosmas.cz Ukazka knihy z internetoveho knihkupectvi www.kosmas.cz Upozornění pro čtenáře a uživatele této knihy Všechna práva vyhrazena. Žádná část této tištěné či elektronické knihy nesmí být reprodukována a šířena

Více

Algoritmy a datové struktury

Algoritmy a datové struktury Algoritmy a datové struktury Data a datové typy 1 / 28 Obsah přednášky Základní datové typy Celá čísla Reálná čísla Znaky 2 / 28 Organizace dat Výběr vhodné datvé struktry různá paměťová náročnost různá

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

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty Data v počítači Informační data (elementární datové typy) Logické hodnoty Znaky Čísla v pevné řádové čárce (celá čísla) v pohyblivé (plovoucí) řád. čárce (reálná čísla) Povelová data (instrukce programu)

Více

Správné vytvoření a otevření textového souboru pro čtení a zápis představuje

Správné vytvoření a otevření textového souboru pro čtení a zápis představuje f1(&pole[4]); funkci f1 předáváme hodnotu 4. prvku adresu 4. prvku adresu 5. prvku hodnotu 5. prvku symbolická konstanta pro konec souboru je eof EOF FEOF feof Správné vytvoření a otevření textového souboru

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

PŘETĚŽOVÁNÍ OPERÁTORŮ

PŘETĚŽOVÁNÍ OPERÁTORŮ PŘETĚŽOVÁNÍ OPERÁTORŮ Jazyk C# podobně jako jazyk C++ umožňuje přetěžovat operátory, tj. rozšířit definice některých standardních operátorů na uživatelem definované typy (třídy a struktury). Stejně jako

Více

Základy jazyka C. Základy programování 1 Martin Kauer (Tomáš Kühr)

Základy jazyka C. Základy programování 1 Martin Kauer (Tomáš Kühr) Základy jazyka C Základy programování 1 Martin Kauer (Tomáš Kühr) Organizační záležitosti Konzultace Pracovna 5.076 Úterý 15:00 16:30 Emailem martin.kauer@upol.cz Web předmětu http://tux.inf.upol.cz/~kauer/index.php?content=var&class=zp1

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

Teoretické minimum z PJV

Teoretické minimum z PJV Teoretické minimum z PJV Pozn.: následující text popisuje vlastnosti jazyka Java zjednodušeně pouze pro potřeby výuky. Třída Zavádí se v programu deklarací třídy což je část programu od klíčových slov

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

Č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

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

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

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

Více

LEKCE 6. Operátory. V této lekci najdete:

LEKCE 6. Operátory. V této lekci najdete: LEKCE 6 Operátory V této lekci najdete: Aritmetické operátory...94 Porovnávací operátory...96 Operátor řetězení...97 Bitové logické operátory...97 Další operátory...101 92 ČÁST I: Programování v jazyce

Více

- dělají se také pomocí #define - podobné (použitím) funkcím - předpřipravená jsou např. v ctype.h. - jak na vlastní makro:

- dělají se také pomocí #define - podobné (použitím) funkcím - předpřipravená jsou např. v ctype.h. - jak na vlastní makro: 21.4.2009 Makra - dělají se také pomocí #define - podobné (použitím) funkcím - předpřipravená jsou např. v ctype.h - jak na vlastní makro: #define je_velke(c) ((c) >= 'A' && (c)

Více

Data, výrazy, příkazy

Data, výrazy, příkazy Data, výrazy, příkazy Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Přednášky byly připraveny s pomocí materiálů, které vyrobili Ladislav Vágner, Pavel Strnad, Martin Hořeňovský, Aleš Hrabalík

Více

Seznámení s datovými typy a operátory

Seznámení s datovými typy a operátory Knihovny tříd Javy KAPITOLA 2 Seznámení s datovými typy a operátory Klíčové dovednosti a pojmy Seznámení s primitivními typy jazyka Java. Používání literálů. Inicializace proměnných. Seznámení s pravidly

Více

MQL4 COURSE. By Coders guru www.forex-tsd.com -3 DATA TYPES. Doufám, že předchozí lekce SYNTAX se vám líbila. V té jsme se pokoušeli zodpovědět:

MQL4 COURSE. By Coders guru www.forex-tsd.com -3 DATA TYPES. Doufám, že předchozí lekce SYNTAX se vám líbila. V té jsme se pokoušeli zodpovědět: MQL4 COURSE By Coders guru www.forex-tsd.com -3 DATA TYPES Vítám vás ve třetí lekci svého MQL4 kurzu. Doufám, že předchozí lekce SYNTAX se vám líbila. V té jsme se pokoušeli zodpovědět: Jaký formát můžete

Více

Zápis programu v jazyce C#

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

Více

Informatika Datové formáty

Informatika Datové formáty Informatika Datové formáty Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008 Obsah Datové formáty (datové typy). Textové formáty, vlastnosti zdroje zpráv. Číselné formáty, číselné

Více

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy MQL4 COURSE By Coders guru www.forex-tsd.com -4 Operace & Výrazy Vítejte ve čtvrté lekci mého kurzu MQL4. Předchozí lekce Datové Typy prezentovaly mnoho nových konceptů ; Doufám, že jste všemu porozuměli,

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

Více o konstruktorech a destruktorech

Více o konstruktorech a destruktorech Více o konstruktorech a destruktorech Více o konstruktorech a o přiřazení... inicializovat objekt lze i pomocí jiného objektu lze provést přiřazení mezi objekty v původním C nebylo možné provést přiřazení

Více

Prezentace a vysvětlení programového prostředí NXC

Prezentace a vysvětlení programového prostředí NXC Úvod Další jazyk, který je možno použít pro programování NXT kostky je NXC Not exatly C Na rozdíl od jazyku NXT-G, kde jsme vytvářeli program pomocí grafických prvků přesněji řečeno pomocí programovacích

Více

Proměnné a datové typy

Proměnné a datové typy Proměnné a datové typy KAPITOLA 2 V této kapitole: Primitivní datové typy Proměnné Opakování Mezi základní dovednosti každého programátora bezesporu patří dobrá znalost datových typů. Ta vám umožní efektivní

Více

Úvod do programování - Java

Úvod do programování - Java Úvod do programování - Java Cvičení č.1 1 1 UPR informace Cvičící í RNDr. Eliška Ochodková, kancelář A1010 eliska.ochodkova@vsb.cz www.cs.vsb.cz/ochodkova Přednášející Ing. Michal Krátký, Ph.D., kancelář

Více

IUJCE 07/08 Přednáška č. 6

IUJCE 07/08 Přednáška č. 6 Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak

Více

Souhrn Apendixu A doporučení VHDL

Souhrn Apendixu A doporučení VHDL Fakulta elektrotechniky a informatiky Univerzita Pardubice Souhrn Apendixu A doporučení VHDL Práce ke zkoušce z předmětu Programovatelné logické obvody Jméno: Jiří Paar Datum: 17. 2. 2010 Poznámka k jazyku

Více

Stromy, haldy, prioritní fronty

Stromy, haldy, prioritní fronty Stromy, haldy, prioritní fronty prof. Ing. Pavel Tvrdík CSc. Katedra počítačů FEL České vysoké učení technické DSA, ZS 2008/9, Přednáška 6 http://service.felk.cvut.cz/courses/x36dsa/ prof. Pavel Tvrdík

Více

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod. Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání

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

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_25 09

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_25 09 Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Název: Téma: Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Operátory Autor:

Více

4 Datové struktury. Datové struktury. Zobrazení dat v počítači

4 Datové struktury. Datové struktury. Zobrazení dat v počítači 4 Datové struktury Zobrazení dat v počítači Každá hodnota v paměti počítače je zakódovaná do posloupnosti bitů. Využívá se přitom dvojková (binární) soustava, která používá dva znaky, 1 (nebo I ) a 0,

Více

Mikroprocesorová technika (BMPT)

Mikroprocesorová technika (BMPT) Mikroprocesorová technika (BMPT) Přednáška č. 10 Číselné soustavy v mikroprocesorové technice Ing. Tomáš Frýza, Ph.D. Obsah přednášky Číselné soustavy v mikroprocesorové technice Dekadická, binární, hexadecimální

Více

3 Jednoduché datové typy 2 3.1 Interpretace čísel v paměti počítače... 3. 4 Problémy s matematickými operacemi 5

3 Jednoduché datové typy 2 3.1 Interpretace čísel v paměti počítače... 3. 4 Problémy s matematickými operacemi 5 Obsah Obsah 1 Číselné soustavy 1 2 Paměť počítače 1 2.1 Měření objemu paměti počítače................... 1 3 Jednoduché datové typy 2 3.1 Interpretace čísel v paměti počítače................. 3 4 Problémy

Více

Odvozené a strukturované typy dat

Odvozené a strukturované typy dat Odvozené a strukturované typy dat Petr Šaloun katedra informatiky FEI VŠB-TU Ostrava 14. listopadu 2011 Petr Šaloun (katedra informatiky FEI VŠB-TU Ostrava) Odvozené a strukturované typy dat 14. listopadu

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

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

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

Obsah. Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13

Obsah. Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13 Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13 KAPITOLA 1 Na úvod o Javě 15 Počítačový program 15 Vysokoúrovňový programovací

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

MAXScript výukový kurz

MAXScript výukový kurz MAXScript výukový kurz Díl čtvrtý jazyk MAXScript, část I. Jan Melichar, březen 2008 Jan Melichar (aka JME) strana 1 OBSAH ÚVOD... 4 ZÁKLADNÍ PŘÍKAZY... 5 OPERÁTORY... 6 PROMĚNNÉ... 6 POLE... 7 ZÁVĚREM...

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

Základní stavební prvky algoritmu

Základní stavební prvky algoritmu Základní stavební prvky algoritmu Podmínka. Cyklus for, while, do-while. Funkce, metody. Přetěžování. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká

Více

Číselné soustavy. Binární číselná soustava

Číselné soustavy. Binární číselná soustava 12. Číselné soustavy, binární číselná soustava. Kódování informací, binární váhový kód, kódování záporných čísel. Standardní jednoduché datové typy s pevnou a s pohyblivou řádovou tečkou. Základní strukturované

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

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

Ing. Igor Kopetschke TUL, NTI

Ing. Igor Kopetschke TUL, NTI ALGORITMY A DATOVÉ STRUKTURY 1. Organizace dat v paměti, datové typy Ing. Igor Kopetschke TUL, NTI http://www.nti.tul.cz Jednotlivé body Ukládání a a organizace dat Vnitřní paměť Vnější paměť Přístup k

Více

1. Téma 03 - Rozhodování

1. Téma 03 - Rozhodování 1. Téma 03 - Rozhodování Cíl látky Seznámit se a prakticky si vyzkoušet zápis rozhodování v jazyce Java 1.1. Úvod Jednou z nejčastěji používanou konstrukcí při programování je rozhodování. Právě této problematice

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

Kódováni dat. Kódy používané pro strojové operace

Kódováni dat. Kódy používané pro strojové operace Kódováni dat Před zpracováním dat například v počítači je třeba znaky převést do tvaru, kterému počítač rozumí, tj. přiřadit jim určité kombinace bitů. Tomuto převodu se říká kódování. Kód je předpis pro

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

2 Datové struktury. Pole Seznam Zásobník Fronty FIFO Haldy a prioritní fronty Stromy Hash tabulky Slovníky

2 Datové struktury. Pole Seznam Zásobník Fronty FIFO Haldy a prioritní fronty Stromy Hash tabulky Slovníky Pole Seznam Zásobník Fronty FIFO Haldy a prioritní fronty Stromy Hash tabulky Slovníky 25 Pole Datová struktura kolekce elementů (hodnot či proměnných), identifikovaných jedním nebo více indexy, ze kterých

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

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Metody přidělování paměti Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Důležitá hlediska jazykových konstrukcí: Dynamické typy Dynamické

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

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně Čísla v plovoucířádovéčárce INP 2008 FIT VUT v Brně Čísla v pevné vs plovoucí řádové čárce Pevnářádováčárka FX bez desetinné části (8 bitů) Přímý kód: 0 až 255 Doplňkový kód: -128 až 127 aj. s desetinnou

Více

Kapitola 1. Signály a systémy. 1.1 Klasifikace signálů

Kapitola 1. Signály a systémy. 1.1 Klasifikace signálů Kapitola 1 Signály a systémy 1.1 Klasifikace signálů Signál představuje fyzikální vyjádření informace, obvykle ve formě okamžitých hodnot určité fyzikální veličiny, která je funkcí jedné nebo více nezávisle

Více

Kód. Proměnné. #include 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

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní Základy jazyka C# 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 přednášky Architektura.NET Historie Vlastnosti

Více

Základní jednotky používané ve výpočetní technice

Základní jednotky používané ve výpočetní technice Základní jednotky používané ve výpočetní technice Nejmenší jednotkou informace je bit [b], který může nabývat pouze dvou hodnot 1/0 (ano/ne, true/false). Tato jednotka není dostatečná pro praktické použití,

Více

Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/04.0006

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

Více

1. Základní pojmy a číselné soustavy

1. Základní pojmy a číselné soustavy 1. Základní pojmy a číselné soustavy 1.1. Základní pojmy Hardware (technické vybavení počítače) Souhrnný název pro veškerá fyzická zařízení, kterými je počítač vybaven. Software (programové vybavení počítače)

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 0 5 9 6 4 ALGORITMY V JAZYKU

Více

Jazyk C++ I. Polymorfismus

Jazyk C++ I. Polymorfismus Jazyk C++ I Polymorfismus AR 2013/2014 Jazyk C++ I Operátory Co to vůbec jsou operátory? Na co je používáme? AR 2013/2014 Jazyk C++ I 2 Operátory Můžeme si upravit operátory pro vlastní objektové typy?

Více

přetížení operátorů (o)

přetížení operátorů (o) přetížení operátorů (o) - pro vlastní typy je možné přetížit i operátory (tj. definovat vlastní) - pro definici slouží klíčové slovo operator následované typem/znakem operátoru - deklarace pomocí funkčního

Více

Paralelní programování

Paralelní programování Paralelní programování přednášky Jan Outrata únor duben 2011 Jan Outrata (KI UP) Paralelní programování únor duben 2011 1 / 14 Atomické akce dále nedělitelná = neproložitelná jiným procesem izolovaná =

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

Generické programování

Generické programování Generické programování Od C# verze 2.0 = vytváření kódu s obecným datovým typem Příklad generická metoda, zamění dva parametry: static void Swap(ref T p1, ref T p2) T temp; temp = p1; p1 = p2; p2 =

Více

Číselné soustavy a převody mezi nimi

Číselné soustavy a převody mezi nimi Číselné soustavy a převody mezi nimi Základní požadavek na počítač je schopnost zobrazovat a pamatovat si čísla a provádět operace s těmito čísly. Čísla mohou být zobrazena v různých číselných soustavách.

Více

PB002 Základy informačních technologií

PB002 Základy informačních technologií Operační systémy 25. září 2012 Struktura přednašky 1 Číselné soustavy 2 Reprezentace čísel 3 Operační systémy historie 4 OS - základní složky 5 Procesy Číselné soustavy 1 Dle základu: dvojková, osmičková,

Více

PB161 Programování v jazyce C++ Přednáška 9

PB161 Programování v jazyce C++ Přednáška 9 PB161 Programování v jazyce C++ Přednáška 9 Právo friend Přetěžování operátorů Nikola Beneš 16. listopadu 2015 PB161 přednáška 9: friend, přetěžování operátorů 16. listopadu 2015 1 / 30 Reklama PB173 Tematicky

Více

OBJEKTOVÉ PROGRAMOVÁNÍ V C++ V PŘÍKLADECH 8 Proudová knihovna 8.1 Hierarchie proudů... 8-1 8.2 Standardně zavedené proudy... 8-1 8.

OBJEKTOVÉ PROGRAMOVÁNÍ V C++ V PŘÍKLADECH 8 Proudová knihovna 8.1 Hierarchie proudů... 8-1 8.2 Standardně zavedené proudy... 8-1 8. David MATOUŠEK OBJEKTOVÉ PROGRAMOVÁNÍ V C++ V PØÍKLADECH Praha 2011 David Matoušek Objektové programování v C++ v pøíkladech Lektoroval Ing. Bohumil Brtník, Ph.D. Bez pøedchozího písemného svolení nakladatelství

Více

PROGRAMOVÁNÍ V JAZYCE C V PŘÍKLADECH 11 Dynamické datové struktury 11.1 Spojové struktury... 11-1 11.2 Příklad PROG_11-01... 11-2 11.

PROGRAMOVÁNÍ V JAZYCE C V PŘÍKLADECH 11 Dynamické datové struktury 11.1 Spojové struktury... 11-1 11.2 Příklad PROG_11-01... 11-2 11. David Matoušek Programování v jazyce C v pøíkladech Praha 2011 David Matoušek Programování v jazyce C v pøíkladech Bez pøedchozího písemného svolení nakladatelství nesmí být kterákoli èást kopírována nebo

Více

Principy počítačů I Reprezentace dat

Principy počítačů I Reprezentace dat Principy počítačů I Reprezentace dat snímek 1 Principy počítačů Část III Reprezentace dat VJJ 1 snímek 2 Symbolika musí být srozumitelná pro stroj, snadno reprezentovatelná pomocí fyzikálních veličin vhodně

Více

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

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

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Vyhledávání, vkládání, odstraňování Vyhledání hodnoty v nesetříděném poli Vyhledání hodnoty v setříděném poli Odstranění hodnoty z pole Vkládání hodnoty do pole Verze pro akademický

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

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

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

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Řídicí struktury, standardní metody Problematika načítání pomocí Scanner Některé poznámky k příkazům Psaní kódu programu Metody třídy Math Obalové třídy primitivních datových

Více

Dědění, polymorfismus

Dědění, polymorfismus Programování v jazyce C/C++ Ladislav Vagner úprava Pavel Strnad Dědění. Polymorfismus. Dnešní přednáška Statická a dynamická vazba. Vnitřní reprezentace. VMT tabulka virtuálních metod. Časté chyby. Minulá

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

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

VZORCE A VÝPOČTY. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen 2013. Ročník: sedmý

VZORCE A VÝPOČTY. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen 2013. Ročník: sedmý Autor: Mgr. Dana Kaprálová VZORCE A VÝPOČTY Datum (období) tvorby: září, říjen 2013 Ročník: sedmý Vzdělávací oblast: Informatika a výpočetní technika 1 Anotace: Žáci se seznámí se základní obsluhou tabulkového

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