1. Úvod do předmětu. BI-EP2 Efektivní programování Martin Kačer
|
|
- Sára Müllerová
- před 7 lety
- Počet zobrazení:
Transkript
1 1. Úvod do předmětu BI-EP2 Efektivní programování 2 LS 2017/2018 Ing. Martin Kačer, Ph.D Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze Vznik předmětu byl podpořen FRVŠ v rámci projektu 2581/2011
2 První hodina obsah Předmět a jeho organizace Vyhodnocovací systém O řešení úloh Znáte už EP1? Mnoho věcí se dnes bude opakovat Martin Kačer, BI-EP2 1. Úvod do předmětu 2
3 O předmětu
4 Účel Praktické procvičení algoritmů aneb jak psát programy Rychle Přehledně Efektivně Bez chyb (pokud možno ) Předpokládáme znalosti z BI-AG1 (BI-AG2?) Martin Kačer, BI-EP2 1. Úvod do předmětu 4
5 Naše cíle Naučit se programovat odstraňovat chyby (ještě lépe: nedělat) přemýšlet!!! Do budoucna Zlepšit výsledky ČVUT (FIT) v soutěžích Martin Kačer, BI-EP2 1. Úvod do předmětu 5
6 ACM Contest International Collegiate Programming Contest (ICPC) Prestižní soutěž v programování Statisíce studentů 2736 univerzit 102 zemí ze 6 kontinentů Týmová Martin Kačer, BI-EP2 1. Úvod do předmětu 6
7 ACM ICPC x BI-EP2 Příklady ze soutěže Formát použitý v soutěži (ale nikoli v týmech) Cílem rozhodně není jen ICPC Algoritmy jsou obecné Martin Kačer, BI-EP2 1. Úvod do předmětu 7
8 Kontakty Martin Kačer Webové stránky pro předmět Další odkazy Martin Kačer, BI-EP2 1. Úvod do předmětu 8
9 Organizace
10 Forma Především řešení konkrétních úloh Rozsah 2+1 (oficiálně 2+2) Každý týden hodina od 9:15 Od 11:00 rezerva + konzultace Řešení úloh doma (to především!) => Primárně cvičení od 9:15 Martin Kačer, BI-EP2 1. Úvod do předmětu 10
11 Čtrnáctidenní cyklus První týden (pátek 9:15) Obecné postupy a algoritmy Zadání na další týden Druhý týden (pátek 9:15) Ukázka řešení problémů Diskuze nad variantami Konzultace v případě potřeby (11:00) Martin Kačer, BI-EP2 1. Úvod do předmětu 11
12 Řešení úloh první týden Samostatné řešení Zkoušíme, co kdo zvládne sám Nácvik bezchybného návrhu Co smíte? Hledat na internetu OBECNÉ věci a algoritmy Co nesmíte? Hledat konkrétně daný příklad Opisovat Radit se s kolegy (ani se mnou ) Martin Kačer, BI-EP2 1. Úvod do předmětu 12
13 Řešení úloh druhý týden Implementace podle řešení Dokončení úloh, které jste nezvládli (nestihli) Nácvik bezchybné implementace Co smíte? Hledat na internetu cokoli Radit se s kolegy či se zeptat vyučujícího Studovat prezentaci řešení, vstupy, výstupy Co nesmíte? Úplně to opsat Martin Kačer, BI-EP2 1. Úvod do předmětu 13
14 Hrajte fér! Samostatně Nepovinný výběrový předmět Poctivě, zejména v prvním týdnu Internet pro obecné hledání ANO Internet pro konkrétní řešení NE! Internet pro zjištění vstupů NE! Porušení pravidel = okamžitý konec! Martin Kačer, BI-EP2 1. Úvod do předmětu 14
15 Hodnocení I 20 úloh 5 tematických cyklů x 4 úlohy v každém Body za vyřešení 5 bodů v prvním týdnu (max. 5x20 = 100) 3 body v druhém týdnu Body za počet úloh 1 bod za 2 a více úloh v daném cyklu (max. 5) -1 bod za 1 úlohu -2 body za 0 úloh Martin Kačer, BI-EP2 1. Úvod do předmětu 15
16 Hodnocení II Vlastní vyrobená úloha max. 15 bodů povinná podmínka zápočtu! 3 body subjektivní hodnocení úlohy 7 bodů faktická správnost 5 bodů vzájemné hodnocení Teoretické maximum: 120 bodů Standardní klasifikace A 90 b. B 80 b. C 70 b. atd. Martin Kačer, BI-EP2 1. Úvod do předmětu 16
17 Harmonogram (změna vyhrazena) #T Datum Náplň Úvod + vyhodnocovací systém, ladění chyb Mřížky & Vyplňování Řešení + konzultace Prohledávání grafů & Stavový prostor Řešení + konzultace Pokrytí & Nejkratší cesty & Kostry Řešení + konzultace >>> výuka odpadá <<< Toky v sítích & Párování Řešení + konzultace Řetězce & Geometrie Řešení + konzultace Martin Kačer, BI-EP2 1. Úvod do předmětu 17
18 Vyhodnocovací systém
19 Vyhodnocovací systém PCSS Vyvinut na ČVUT Použit v pražských kolech Webové rozhraní C/C++ Java Martin Kačer, BI-EP2 1. Úvod do předmětu 19
20 Obdržíte mailem PCSS hesla Platná celý semestr Martin Kačer, BI-EP2 1. Úvod do předmětu 20
21 PCSS zadání úloh PROBLEMS Martin Kačer, BI-EP2 1. Úvod do předmětu 21
22 PCSS odevzdání řešení Martin Kačer, BI-EP2 1. Úvod do předmětu 22
23 PCSS zjištění výsledku Martin Kačer, BI-EP2 1. Úvod do předmětu 23
24 PCSS možné odezvy Jen pro poslední pokus! compile error program nejde přeložit runtime error chyba za běhu time limit exceeded pomalé/cyklí se wrong answer špatná odpověď presentation error asi chyba formátu accepted úspěšně odevzdáno Martin Kačer, BI-EP2 1. Úvod do předmětu 24
25 PCSS výsledky ostatních Martin Kačer, BI-EP2 1. Úvod do předmětu 25
26 Shrnutí: C Funkce main musí vracet nulu Nepoužívat dvoulomítkové komentáře Každá funkce má svůj hlavičkový soubor Neposílat signály (i např. funkce abort, assert) Martin Kačer, BI-EP1 1. Práce s vyhodnocovacím systémem 26
27 Shrnutí: C++ Funkce main musí vracet nulu Každá funkce má svůj hlavičkový soubor Neposílat signály (např. funkce abort, assert) U dlouhých vstupů pozor na pomalost streamů Martin Kačer, BI-EP1 1. Práce s vyhodnocovacím systémem 27
28 Shrnutí: Java Název třídy musí přesně odpovídat úloze Default package Všechno uvnitř jedné třídy Případné dodatečné třídy jako vnitřní (!!) U dlouhých vstupů pozor na pomalost Scanneru Martin Kačer, BI-EP1 1. Práce s vyhodnocovacím systémem 28
29 Potíže s PCSS? Neposílejte řešení opakovaně Obvykle je to zbytečné Sbíráte trestné minuty Ozvěte se! (týká se technických problémů, nikoli potíží s řešením úloh v prvním týdnu) Martin Kačer, BI-EP2 1. Úvod do předmětu 29
30 Vstup a výstup v PCSS VŽDY pouze standardní stdin, stdout, scanf, printf System.in, System.out i kdyby zadání tvrdilo něco jiného! Otevírání souborů je zakázáno!! Spouštění z příkazové řádky./program < vstup.in > vystup.out Martin Kačer, BI-EP2 1. Úvod do předmětu 30
31 O řešení úloh
32 Jaké chceme řešení Správné Vždycky správné! Stabilní Efektivní Rychle hotové!!! V JEDNODUCHOSTI JE SÍLA!!! Martin Kačer, BI-EP2 1. Úvod do předmětu 32
33 V čem spočívá jednoduchost Zbytečně nepsat Zbytečně nepočítat Co nejméně speciálních případů Ale na žádný nezapomenout! Přehlednost Martin Kačer, BI-EP2 1. Úvod do předmětu 33
34 Jednoduché = dobré Rychle napsané Přehledné Méně chyb Často efektivnější ale samozřejmě ne vždy => Preferujeme jednoduché Martin Kačer, BI-EP2 1. Úvod do předmětu 34
35 Přemýšlejme! První nápad nemusí být nejlepší První nápad nemusí být ani správný Proč to děláme zrovna tak? Kdy to (ne)bude fungovat? Výhoda automatického hodnocení Neřekne nám, proč je to špatně Martin Kačer, BI-EP2 1. Úvod do předmětu 35
36 Správnost algoritmu NELZE stoprocentně otestovat Nechceme zkoušet a DOUFAT Chceme VĚDĚT!!! Dokážete zdůvodnit volbu řešení? Umíte dokázat správnost? Bude to fungovat opravdu VŽDY? Martin Kačer, BI-EP2 1. Úvod do předmětu 36
37 Efektivita x velikost vstupu Předpokládáme cca miliardy operací Hranice samozřejmě není ostrá Složitost Omezení na data O(n) ~ O(n. log n) ~ O(n 2 ) ~ O(n 3 ) ~ O(n 4 ) ~ 200 O(2 n ) ~ 30 O(n!) ~ 10 Martin Kačer, BI-EP2 1. Úvod do předmětu 37
38 Typické postupy
39 Povaha úloh Textové zadání Přesně popsaný vstup a výstup Nutno dodržovat Automatické vyhodnocování Úkolem je program, který správně řeší jakoukoli instanci problému! Martin Kačer, BI-EP2 1. Úvod do předmětu 39
40 Vícenásobné zadání Vstup s jediným příkladem V našich úlohách asi nebude Na začátku zadán počet příkladů Ukončení vstupu Konec souboru Speciální hodnota Martin Kačer, BI-EP2 1. Úvod do předmětu 40
41 Zpracování při známém počtu N Příklad 1 Příklad 2 Příklad N int n = readnumber(); for (int i = 0; i < n; ++i) { readoneproblem(); solveoneproblem(); printoneproblem(); } Martin Kačer, BI-EP2 1. Úvod do předmětu 41
42 Zpracování s detekcí konce A1 B1 A2 B2 0 0 for (;;) { int a = readnumber(), b = readnumber(); if (a == 0 && b == 0) break; solveoneproblem(a, b); printoneproblem(); } Martin Kačer, BI-EP2 1. Úvod do předmětu 42
43 Typické čtení v C/C++ Hodnoty oddělené mezerami - scanf Čísla Znaky Řetězce scanf( %d, &num); scanf( %d%d%d, &num1, &num2, &num3); scanf( %c%c, &char1, &char2); scanf( %s, string); /* proč tam není &string? */ /* proč se v normálních programech nepoužívá? */ Martin Kačer, BI-EP2 1. Úvod do předmětu 43
44 Čtení v C možné potíže Jaký je rozdíl v těchto zápisech? scanf( %d%d, &num1, &num2); scanf( %d %d, &num1, &num2); scanf( %d%d\n, &num1, &num2); scanf( %d%d, &num1, &num2); scanf( %c%c, &ch1, &ch2); scanf( %d%d, &num1, &num2); scanf( %i%i, &num1, &num2); Martin Kačer, BI-EP2 1. Úvod do předmětu 44
45 Čtení v C whitespace Přeskakování mezer Je-li zadána mezera Většina konverzí (kromě %c!!) 2 5 ABCDE FGHIJ 2 5 ABCDE FGHIJ scanf( %d%d, &num1, &num2); scanf( %c%c, &ch1, &ch2); ch1 ch2 newline! A scanf( %d%d\n, &num1, &num2); scanf( %c%c, &ch1, &ch2); ch1 ch2 A B Martin Kačer, BI-EP2 1. Úvod do předmětu 45
46 Čtení v C whitespace Přeskakování mezer Je-li zadána mezera Většina konverzí (kromě %c!!) 2 5 *** * * * 2 5 *** * * * scanf( %d%d, &num1, &num2); scanf( %c%c, &ch1, &ch2); ch1 ch2 newline mezera scanf( %d%d\n, &num1, &num2); scanf( %c%c, &ch1, &ch2); ch1 * ch2 * Martin Kačer, BI-EP2 1. Úvod do předmětu 46
47 Čtení v C whitespace Přeskakování mezer Je-li zadána mezera Většina konverzí (kromě %c!!) 3 7 scanf( %d%d, &num1, &num2); num1 3 num scanf( %c%c, &ch1, &ch2); ch1 3 ch2 mezera! Martin Kačer, BI-EP2 1. Úvod do předmětu 47
48 Čtení v C formát čísel V desítkové soustavě vždy %d!! i když je to obvykle jedno 12:05 08:45 scanf( %d:%d, &num1, &num2); scanf( %d:%d, &num3, &num4); num1 12 num2 5 num3 8 num :45 scanf( %i:%i, &num3, &num4); num3 0 num4 nedefinováno! Martin Kačer, BI-EP2 1. Úvod do předmětu 48
49 Typické čtení Java Použití třídy java.util.scanner Není příliš efektivní import java.util.scanner; Scanner in = new Scanner(System.in); int count = in.nextint(); in.nextline(); double d = in.nextdouble(); Martin Kačer, BI-EP2 1. Úvod do předmětu 49
50 Alternativní čtení Java O něco málo složitější, ale rychlejší StringTokenizer st = new StringTokenizer(""); BufferedReader input = new BufferedReader( new InputStreamReader(System.in)); String nexttoken() throws Exception { while (!st.hasmoretokens()) st = new StringTokenizer(input.readLine()); return st.nexttoken(); } int nextint() throws Exception { return Integer.parseInt(nextToken()); } Martin Kačer, BI-EP2 1. Úvod do předmětu 50
51 Čtení po řádcích C/C++ gets / fgets / getchar Uloží i newline!! Pozor na kombinaci se scanf! 2 ABCDE FGHIJ 2 ABCDE FGHIJ scanf( %d\n, &num); fgets(string, length, stdin); num 2 string ABCDE scanf( %d, &num); fgets(string, length, stdin); num 2 string prázdný! Martin Kačer, BI-EP2 1. Úvod do předmětu 51
52 Čtení po řádcích Java Pro změnu asi o něco jednodušší BufferedReader StringTokenizer st = new StringTokenizer(""); BufferedReader input = new BufferedReader( new InputStreamReader(System.in)); String nextline() throws Exception { return input.readline(); } Martin Kačer, BI-EP2 1. Úvod do předmětu 52
53 Formátování výstupu
54 Desetinná čísla Daný počet desetinných míst Zaokrouhlování Martin Kačer, BI-EP2 1. Úvod do předmětu 54
55 printf Reálná čísla C/C++ printf( %f, pi); printf( %.2f, pi); 3.14 printf( %0.3f, pi); printf( %.3f, 0.25); printf( %8.3f, 0.25); printf( %08.3f, 0.25); Martin Kačer, BI-EP2 1. Úvod do předmětu 55
56 Reálná čísla Java java.text.* MessageFormat, NumberFormat, DecimalFormat out.println(new DecimalFormat("0").format(pi)); println(pi); DecimalFormat( 0 ); 3 DecimalFormat( ); DecimalFormat( ); DecimalFormat( ###.### ); DecimalFormat( ); DecimalFormat( #.### ); Martin Kačer, BI-EP2 1. Úvod do předmětu 56
57 Složitější formátování Požadavky na přesné rozmístění mezery, ASCII-art apod. $ $$$$$ ############ $$ $ $$ # B # $$ $ # ### # # $$$$$ # #X #--# c = a + b $ $$ # ###### # $$ $ $$ # A # 00# $$$$$ ############ $ Martin Kačer, BI-EP2 1. Úvod do předmětu 57
58 Složitější formátování Požadavky na přesné rozmístění Většinou se vyplatí zapisovat do pole char map[20][61]; for (r = 0; r < 20; ++r) { for (c = 0; c < 60; ++c) map[r][c] = ; map[r][60] = \0 ; } while(...) map[i][j] = - ; map[i+1][j] = ; C / C++ Martin Kačer, BI-EP2 1. Úvod do předmětu 58
59 Složitější formátování Požadavky na přesné rozmístění Pole pak vypíšeme celé najednou char map[20][60];... for (r = 0; r < 20; ++r) printf( %s\n, map[r]); C / C++ char ch[][] = new char[20][30];... for (int i = 0; i < 20; ++i) System.out.println(ch[i]); Martin Kačer, BI-EP2 1. Úvod do předmětu 59
60 Reálná aritmetika
61 Reálná čísla Reprezentace: mantisa + exponent => rozlišuje jen určitý počet platných číslic OK 0, OK ale při součtu se přesnost ztratí! Desetinná čísla jsou navíc nepřesná sama o sobě: 0,125 desítkově 0,001 binárně 0,2 desítkově 0, binárně Martin Kačer, BI-EP2 1. Úvod do předmětu 61
62 Porovnávání reálných čísel Co vypíše následující kód? double x; for (x = 0.0; x!= 1.0; x += 0.1) { printf("%f\n", x); } double x; for (x = 0.0; x < 1.0; x += 0.02) { printf("%f\n", x); } Martin Kačer, BI-EP2 1. Úvod do předmětu 62
63 Porovnávání reálných čísel PAMATUJTE: Desetinná čísla jsou nepřesná!!! double x; for (x = 0.0; x < 1.0; x += 0.1) { printf("%f\n", x); } Martin Kačer, BI-EP2 1. Úvod do předmětu 63
64 Porovnávání reálných čísel PAMATUJTE: Desetinná čísla jsou nepřesná!!! double x; for (x = 0.0; x <= 1.0; x += 0.02) { printf("%f\n", x); } Martin Kačer, BI-EP2 1. Úvod do předmětu 64
65 Reálná čísla příklad Zjistěte, zda je bod [X,Y] uvnitř kruhu o poloměru R if (sqrt(x*x + y*y) <= r) Odmocnina je zbytečně pomalá a nepřesná if (x*x + y*y <= r*r) Lepší Funguje i pro celá čísla ale vlastně JEN pro celá čísla Martin Kačer, BI-EP2 1. Úvod do předmětu 65
66 Reálná čísla příklad if (x*x + y*y <= r*r) Nevhodné kvůli nepřesnostem reálných čísel Bod ležící na kružnici testem projít může a nemusí static final EPS = 1E-8; if (x*x + y*y < r*r + EPS) /* včetně kružnice */ if (x*x + y*y < r*r - EPS) /* vyjma kružnice */ Martin Kačer, BI-EP2 1. Úvod do předmětu 66
67 Magické epsilon Vždy používejte pro porovnávání! Pokud existuje rozdíl mezi < a <= Na úplnou rovnost if ( abs(a-b) < EPS ) Jak epsilon vybrat? Dostatečně velké, aby pomohlo Dostatečně malé, aby nevadilo o několik řádů menší než hodnoty Martin Kačer, BI-EP2 1. Úvod do předmětu 67
68 O chybách a tak
69 Typy chyb v úlohách Špatný algoritmus Neměl by se nám vůbec stávat (ale ) Chybná implementace Tady asi pomůže jen praxe (příp. review) Chyták Čtěte pořádně zadání a přemýšlejte! Martin Kačer, BI-EP2 1. Úvod do předmětu 69
70 Co dělat, když to nefunguje? Nesnažte se vzít větší kladivo Raději přemýšlejte! X Martin Kačer, BI-EP2 1. Úvod do předmětu 70
71 Runtime Error Kde k němu může dojít? Přístup do paměti Dělení Jiné výjimky (Java) Indexy a rozměry polí Dynamická alokace paměti Snažte se najít vstup, kde to spadne Martin Kačer, BI-EP2 1. Úvod do předmětu 71
72 Time Limit Exceeded Zkontrolujte čtení vstupu! Případná další nekonečná smyčka? Je váš algoritmus skutečně efektivní? Speciální případy: prázdný, největší Snažte se najít vstup, pro který je to podezřele pomalé Martin Kačer, BI-EP2 1. Úvod do předmětu 72
73 Wrong Answer Speciální případy prázdný jeden prvek Zkontrolujte znovu zadání Je váš algoritmus skutečně správný? Snažte se najít vstup, pro který to nefunguje (tady je to ale těžké) Martin Kačer, BI-EP2 1. Úvod do předmětu 73
74 Presentation Error Zkontrolujte texty Nevypisujete něco navíc? Ladící výstupy Formátování čísel (zejména reálných) Může znamenat i špatnou odpověď Případně mne kontaktujte Martin Kačer, BI-EP2 1. Úvod do předmětu 74
75 Stále nic? Přemýšlejte! Přečtete si znovu zadání, včetně detailů Ukažte to někomu jinému (pokud to jde) Napište to celé od začátku Nechte to být Martin Kačer, BI-EP2 1. Úvod do předmětu 75
76 To je pro dnešek vše Témata úloh pro další týden: Vybrané úlohy z EP1 Nepočítají se (přímo) do hodnocení ale zkuste si to! Martin Kačer, BI-EP2 1. Úvod do předmětu 76
1. Úvodní informace. BI-EP1 Efektivní programování Martin Kačer
1. Úvodní informace BI-EP1 Efektivní programování 1 ZS 2011/2012 Ing. Martin Kačer, Ph.D. 2010-11 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické
3 KTE / ZPE Informační technologie
3 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň Komentáře
KTE / ZPE Informační technologie
4 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň Největší
Práce s textem. Třída Character. Třída Character. Třída Character. reprezentuje objekty zapouzdřující hodnotu typu char (boxing / unboxing)
Třída Character Práce s textem 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 reprezentuje objekty zapouzdřující hodnotu
BI-EP1 Efektivní programování 1
BI-EP1 Efektivní programování 1 ZS 2011/2012 Ing. Martin Kačer, Ph.D. 2010-11 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze Evropský
BI-EP2 Efektivní programování 2
BI-EP2 Efektivní programování 2 LS 2017/2018 Ing. Martin Kačer, Ph.D. 2011-18 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze Vznik předmětu
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek 1/41 Základní příkazy Všechny příkazy se píšou malými písmeny! Za většinou příkazů musí být středník (;)! 2/41 Základní příkazy
Lekce 9 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C
Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace
6. Tahy / Kostry / Nejkratší cesty
6. Tahy / Kostry / Nejkratší cesty BI-EP2 Efektivní programování 2 LS 2017/2018 Ing. Martin Kačer, Ph.D. 2011-18 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
Úvod do programování. Lekce 1
Úvod do programování Lekce 1 Základní pojmy vytvoření spustitelného kódu editor - psaní zdrojových souborů preprocesor - zpracování zdrojových souborů (vypuštění komentářů atd.) kompilátor (compiler) -
Programování v C++ 1, 1. cvičení
Programování v C++ 1, 1. cvičení opakování látky ze základů programování 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled 1 2 Shrnutí procvičených
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,
Operační systémy. Cvičení 4: Programování v C pod Unixem
Operační systémy Cvičení 4: Programování v C pod Unixem 1 Obsah cvičení Řídící struktury Funkce Dynamická alokace paměti Ladění programu Kde najít další informace Poznámka: uvedené příklady jsou dostupné
- jak udělat konstantu long int: L long velka = 78L;
Konstanty (konstatní hodnoty) Např.: - desítkové: 25, 45, 567, 45.678 - osmičkové: 045, 023, 03 vždy začínají 0 - šestnáctkové: 0x12, 0xF2, 0Xcd, 0xff, 0xFF - jak udělat konstantu long int: 245566553L
Začínáme vážně programovat. Řídící struktury Přetypování Vstupně výstupní operace Vlastní tvorba programů
Začínáme vážně programovat Řídící struktury Přetypování Vstupně výstupní operace Vlastní tvorba programů Podmínky a cykly Dokončení stručného přehledu řídících struktur jazyka C. Složený příkaz, blok Pascalské
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
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
Textové soubory. alg9 1
Textové soubory Textový soubor je posloupnost znaků členěná na řádky každý znak je reprezentován jedním bytem, jehož obsah je dán nějakým kódováním znaků členění na řádky je závislé na platformě a obvykle
Jazyk C++, některá rozšíření oproti C
Karel Müller, Josef Vogel (ČVUT FIT) Jazyk C++, některá rozšíření oproti C BI-PA2, 2011, Přednáška 1 1/22 Jazyk C++, některá rozšíření oproti C Ing. Josef Vogel, CSc Katedra softwarového inženýrství Katedra
Algoritmizace a programování
Algoritmizace a programování Struktura programu Vytvoření nové aplikace Struktura programu Základní syntaktické elementy První aplikace Verze pro akademický rok 2012/2013 1 Nová aplikace NetBeans Ve vývojovém
KTE / ZPE Informační technologie
7 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň - ternární
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
Operátory. Základy programování 1 Martin Kauer (Tomáš Kühr)
Operátory Základy programování 1 Martin Kauer (Tomáš Kühr) Organizační poznámky Formátujte kód přehledně! Pomůžete sobě i mně. Spusťte si vaše programy a zkuste různé vstupy! Pokud program nedává správné
Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b
Výrazy a operátory i = 2 i = 2; to je výraz to je příkaz 4. Operátory Unární - unární a unární + Např.: +5-5 -8.345 -a +b - unární ++ - inkrement - zvýší hodnotu proměnné o 1 - unární -- - dekrement -
Úvod do programování 6. hodina
Úvod do programování 6. hodina RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015 Umíme z minulé hodiny Algoritmy Třídění pole: Selection
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í
Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí
02 Jazyk C - je imperativní říkáme, co se má udělat, voláme příkazy - další imperativní jazyky: Pascal, Java, C/C++ apod. - na rozdíl od jazyků deklarativních např. Prolog, Haskell, Scheme, Lisp (funkcionální
Operační systémy. Cvičení 3: Programování v C pod Unixem
Operační systémy Cvičení 3: Programování v C pod Unixem 1 Obsah cvičení Editace zdrojového kódu Překlad zdrojového kódu Základní datové typy, struktura, ukazatel, pole Načtení vstupních dat Poznámka: uvedené
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
Základy algoritmizace a programování
Základy algoritmizace a programování Přednáška 1 Olga Majlingová Katedra matematiky, ČVUT v Praze 19. září 2011 Obsah Úvodní informace 1 Úvodní informace 2 3 4 Doporučená literatura web: http://marian.fsik.cvut.cz/zapg
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,
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
Central European Programming Contest 2009 příprava na soutěž. Jan Stoklasa stoklja5 at fel.cvut.cz. 1 z 40
Central European Programming Contest 2009 příprava na soutěž Jan Stoklasa stoklja5 at fel.cvut.cz 1 z 40 CEPC 2009 Wroclaw, 6.-8.11.2009 Odjezd v pátek 6.11. ve 14:30 od budovy FEL v Dejvicích Návrat na
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
4. Rekurze. BI-EP1 Efektivní programování Martin Kačer
4. Rekurze BI-EP1 Efektivní programování 1 ZS 2011/2012 Ing. Martin Kačer, Ph.D. 2010-11 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze
NPRG030 Programování I, 2018/19 1 / :25:37
NPRG030 Programování I, 2018/19 1 / 26 24. 9. 2018 10:25:37 Čísla v algoritmech a programech 10 26 Poloměr vesmíru 2651 studujících studentů MFF UK 3.142857... Ludolfovo číslo 10 16 stáří vesmíru v sekundách!!!
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
5. Dynamické programování
5. Dynamické programování BI-EP1 Efektivní programování 1 ZS 2011/2012 Ing. Martin Kačer, Ph.D. 2010-11 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické
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
Úvod do programování - Java. Cvičení č.4
Úvod do programování - Java Cvičení č.4 1 Sekvence (posloupnost) Sekvence je tvořena posloupností jednoho nebo více příkazů, které se provádějí v pevně daném pořadí. Příkaz se začne provádět až po ukončení
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á
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ýč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
Základy programování. Úloha: Eratosthenovo síto. Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP
Základy programování Úloha: Eratosthenovo síto Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP Obsah 1 Zadání úkolu: 3 1.1 Zadání:............................... 3 1.2 Neformální zápis:.........................
Iterační výpočty. Dokumentace k projektu č. 2 do IZP. 24. listopadu 2004
Dokumentace k projektu č. 2 do IZP Iterační výpočty 24. listopadu 2004 Autor: Kamil Dudka, xdudka00@stud.fit.vutbr.cz Fakulta Informačních Technologií Vysoké Učení Technické v Brně Obsah 1. Úvod...3 2.
Algoritmizace a programování. Terminálový vstup a výstup
Algoritmizace a programování Terminálový vstup a výstup Verze pro akademický rok 2012/2013 1 Výpis hodnot Terminálový vstup a výstup budeme používat jako základní způsob interakce programu s uživatelem
5 Přehled operátorů, příkazy, přetypování
5 Přehled operátorů, příkazy, přetypování Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně budou uvedeny detaily týkající se operátorů. Doba nutná k nastudování
6. Základy výpočetní geometrie
6. Základy výpočetní geometrie BI-EP1 Efektivní programování 1 ZS 2011/2012 Ing. Martin Kačer, Ph.D. 2010-11 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení
Základy programovaní 3 - Java. Unit testy. Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. 26.,27.
Základy programovaní 3 - Java Unit testy Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci 26.,27. listopad, 2014 Petr Krajča (UP) Unit testy 26.,27. listopad, 2014 1 / 14 Testování zásadní
Programování v jazyce C pro chemiky (C2160) 12. Specifické problémy při vývoji vědeckého softwaru
Programování v jazyce C pro chemiky (C2160) 12. Specifické problémy při vývoji vědeckého softwaru Reprezentace reálnách čísel v počítači Reálná čísla jsou v počítači reprezentována jako čísla tvaru ±x
Práce se soubory. Základy programování 2 Tomáš Kühr
Práce se soubory Základy programování 2 Tomáš Kühr Soubory z pohledu C Soubor zjednodušeně chápeme jako posloupnost bytů uložených někde na disku Datový proud (anglicky stream) Ještě obecnější přístup
Programování v C++, 2. cvičení
Programování v C++, 2. cvičení 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled 1 Operátory new a delete 2 3 Operátory new a delete minule
6. Příkazy a řídící struktury v Javě
6. Příkazy a řídící struktury v Javě Příkazy v Javě Příkazy v Javě Řídicí příkazy (větvení, cykly) Přiřazovací příkaz = Řízení toku programu (větvení, cykly) Volání metody Návrat z metody - příkaz return
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
Motivace. Vstup a výstup. Minimální komunikace. Motivace. ÚDPJ - Vstup a výstup. Ing. Lumír Návrat katedra informatiky, A
Motivace Vstup a výstup Ing. Lumír Návrat katedra informatiky, A-1018 59 732 3252 Načtení čísla val :: Int val = 42 function :: Int -> Int function = val + n inputint :: Int inputdiff = inputint - inputint
IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C
Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace
Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.
Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky
Soubor jako posloupnost bytů
Soubory Soubor je množina údajů uložená ve vnější paměti počítače, obvykle na disku Pro soubor jsou typické tyto operace. otevření souboru čtení údaje zápis údaje uzavření souboru Přístup k údajům (čtení
Datové struktury 2: Rozptylovací tabulky
Datové struktury 2: Rozptylovací tabulky prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy
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í
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 -
Úvod do programování
Úvod do programování Základní literatura Töpfer, P.: Algoritmy a programovací techniky, Prometheus, Praha učebnice algoritmů, nikoli jazyka pokrývá velkou část probíraných algoritmů Satrapa, P.: Pascal
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
Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44
Algoritmizace a programování Ak. rok 2012/2013 vbp 1. ze 44 Vladimír Beneš Petrovický K101 katedra matematiky, statistiky a informačních technologií vedoucí katedry E-mail: vbenes@bivs.cz Telefon: 251
Algoritmizace, základy programování, VY_32_INOVACE_PRG_ALGO_01
Anotace sady: Algoritmizace, základy programování, VY_32_INOVACE_PRG_ALGO_01 Autor: Blanka Sadovská Klíčová slova: Algoritmus, proměnná, diagram Stupeň a typ vzdělávání: gymnaziální vzdělávání, 3. ročník
Jazyk C práce se soubory. Jan Hnilica Počítačové modelování 16
Jazyk C práce se soubory 1 Soubory Použití souborů pro vstup většího množství dat do programu (uživatel nezadává z klávesnice ručně tisíce údajů...) pro uložení většího množství výsledků, např. k pozdějšímu
Programové konvence, dokumentace a ladění. Programování II 2. přednáška Alena Buchalcevová
Programové konvence, dokumentace a ladění 2. přednáška Alena Buchalcevová Proč dodržovat programové konvence? velkou část životního cyklu softwaru tvoří údržba údržbu provádí většinou někdo jiný než autor
Základy programování (IZP)
Základy programování (IZP) Čtvrté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 4.
Formátová specifikace má tvar (některé sekce nemají smysl pro načítání) %
vstup a výstup na konzolu - vstupním zařízením je klávesnice, výstupním monitor (přístup jako k sériovým zařízením) - spojení s konzolami je nastaveno automaticky na začátku programu - ke konzole je možné
KTE / PPEL Počítačová podpora v elektrotechnice
24. 9. 2014 KTE / PPEL Počítačová podpora v elektrotechnice Ing. Lenka Šroubová, Ph.D. email: lsroubov@kte.zcu.cz ICQ: 361057825 http://home.zcu.cz/~lsroubov tel.: +420 377 634 623 Místnost: EK602 Katedra
Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické
Jak v Javě primitivní datové typy a jejich reprezentace BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické Obsah Celočíselný datový typ Reálný datový typ Logický datový typ, typ Boolean
Programování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Syntaxe 1. část BI-JSC Evropský sociální fond
Preprocesor. Karel Richta a kol. katedra počítačů FEL ČVUT v Praze. Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016
Preprocesor Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016 Programování v C++, A7B36PJC 4/2016, Lekce 9b https://cw.fel.cvut.cz/wiki/courses/a7b36pjc/start
Šifrování/Dešifrování s použitím hesla
Fakulta elektrotechnická Katedra teoretické elektrotechniky Dokumentace k semestrální práci Šifrování/Dešifrování s použitím hesla 2012/13 Petr Zemek Vyučující: Ing. Petr Kropík, Ph.D Předmět: Základy
Java Cvičení 01. CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics
Java Cvičení 01 http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Příklady - Porovnání Co kód vypíše? package cz.cuni.mff.java.example01.tests; public class Test01
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í
Pole a kolekce. v C#, Javě a C++
Pole a kolekce v C#, Javě a C++ C# Deklarace pole typ_prvku_pole[] jmeno_pole; Vytvoření pole jmeno_pole = new typ_prvku_pole[pocet_prvku_pole]; Inicializace pole double[] poled = 4.8, 8.2, 7.3, 8.0; Java
8 Třídy, objekty, metody, předávání argumentů metod
8 Třídy, objekty, metody, předávání argumentů metod 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 třídám a objektům, instančním
Programování v jazyce C a C++
Programování v jazyce C a C++ Richter 1 Petyovský 2 1. března 2015 1 Ing. Richter Miloslav, Ph.D., UAMT FEKT VUT Brno 2 Ing. Petyovský Petr, UAMT FEKT VUT Brno C++ Stručná charakteristika Nesdíĺı normu
Java a XML. 10/26/09 1/7 Java a XML
Java a XML Java i XML jsou přenositelné V javě existuje podpora pro práci s XML, nejčastější akce prováděné při zpracování XML: načítání XML elementů generování nových elementů nebo úprava starého zápis
Opakování programování
Opakování programování HW návaznost - procesor sběrnice, instrukční sada, optimalizace rychlosti, datové typy, operace (matematické, logické, podmínky, skoky, podprogram ) - paměti a periferie - adresování
2. Mřížky / Záplavové vyplňování
2. Mřížky / Záplavové vyplňování BI-EP2 Efektivní programování 2 LS 2017/2018 Ing. Martin Kačer, Ph.D. 2011-18 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké
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í
Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.
Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Vyhledávání 201 / 344 Osnova přednášky
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
2 Základní funkce a operátory V této kapitole se seznámíme s použitím funkce printf, probereme základní operátory a uvedeme nejdůležitější funkce.
Vážení zákazníci, dovolujeme si Vás upozornit, že na tuto ukázku knihy se vztahují autorská práva, tzv copyright To znamená, že ukázka má sloužit výhradnì pro osobní potøebu potenciálního kupujícího (aby
Úvod do programování 7. hodina
Úvod do programování 7. hodina RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015 Umíme z minulé hodiny Syntax Znaky Vlastní implementace
Regulární výrazy. Vzory
Regulární výrazy Regulární výrazy jsou určeny pro práci s textovými řetězci, jsou součástí J2SDK až od verze 1.4, v předchozích verzích je potřeba použít některou z externích knihoven, např. knihovnu ORO
Proměnná. Datový typ. IAJCE Cvičení č. 3. Pojmenované místo v paměti sloužící pro uložení hodnoty.
Proměnná Pojmenované místo v paměti sloužící pro uložení hodnoty. K pojmenování můžeme použít kombinace alfanumerických znaků, včetně diakritiky a podtržítka Rozlišují se velká malá písmena Název proměnné
Pole a Funkce. Úvod do programování 1 Tomáš Kühr
Pole a Funkce Úvod do programování 1 Tomáš Kühr (Jednorozměrné) pole u Datová struktura u Lineární u Homogenní = prvky stejného datového typu u Statická = předem určený počet prvků u Pole umožňuje pohodlně
Algoritmy I, složitost
A0B36PRI - PROGRAMOVÁNÍ Algoritmy I, složitost České vysoké učení technické Fakulta elektrotechnická v 1.01 Rychlost... Jeden algoritmus (program, postup, metoda ) je rychlejší než druhý. Co ta věta znamená??
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());
Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost rozhraním a výjimkám.
13 Rozhraní, výjimky 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 rozhraním a výjimkám. Doba nutná k nastudování 2 2,5 hodiny
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
Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44
Algoritmizace a programování Ak. rok 2012/2013 vbp 1. ze 44 Vladimír Beneš Petrovický K101 katedra matematiky, statistiky a informačních technologií vedoucí katedry E-mail: vbenes@bivs.cz Telefon: 251
Programování v jazyce C pro chemiky (C2160) 4. Textové řetězce, zápis dat do souboru
Programování v jazyce C pro chemiky (C2160) 4. Textové řetězce, zápis dat do souboru Textové řetězce V jazyce C neexistuje typ proměnné, který by byl určen výhradně pro ukládání textu V jazyce C používáme
Programování v Javě I. Leden 2008
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Programování v Javě (1) 1/ 45 Téma přednášky Datové typy Deklarace třídy Modifikátory
EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI
EVROPSKÝ SOCIÁLNÍ FOND Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Úvod do PHP PHP Personal Home Page Hypertext Preprocessor jazyk na tvorbu dokumentů přípona: *.php skript je součást HTML stránky!
Formátové specifikace formátovací řetězce
27.2.2007 Formátové specifikace formátovací řetězce - je to posloupnost podle které překladač pozná jaký formát má výstup mít - posloupnosti začínají znakem % a určující formát vstupu/výstupu - pokud chcete