Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
|
|
- Josef Kašpar
- před 8 lety
- Počet zobrazení:
Transkript
1 Programování v jazyce C a C# část I. Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Algoritmizace a programování Téma: Programování Vyučující: Ing. Milan Káža Třída: EK2 Hodina: 27 Číslo: V/5
2 Programování v jazyce C a C# část I. Programování v jazyce C a C# 11. Pointery Pointery nebo ukazatel je srdcem i duší jazyka C. Tedy pokud jsou pochopeny pointery tak je možné říci: Umím dobře Céčko, protože pracuji s pointery Pozor pojme pionter se objevuje v jazyce C od firmy Borland v jazyce C# se tento pojem již nevyskytuje, proto se tato část týká pouze jazyka C. Pointer je vždy svázán nějakým datovým typem, proto se uvádí: pointer na typ. Ukazatel (pointer) je v Céčku statická celočíselná proměnná obsahující adresu jiné statické či dynamické proměnné. Nese sebou současně informaci o datovém typu, který se na této adrese nachází. Pointer na proměnnou určitého datového typu se deklaruje pomocí operátoru dereference '* (hvězdička) a takto se deklaruje: datový_typ *identifikátor_pointeru; Uložení adresy do pointeru se liší podle toho zda pointer ukazuje na statickou či dynamickou proměnnou. Díky operátoru reference '&' si uloží do pointeru adresu statické proměnné: identifikátor_pointeru=&identifikátor_proměnné; A takto se do pointeru vloží adresa a vyhradí se prostor pro dynamickou proměnnou: identifikátor_pointeru=(datový_typ *)malloc(sizeof(datový_typ)); Výše uvedený zápis se dá přeložit následovně: Funkce malloc() je funkce, která alokuje paměťový prostor v haldě. Jejím parametrem je počet bytů potřebný pro alokaci. Ten byl zjištěn operátorem pro zjištění velikosti datového typu sizeof(). Jelikož funkce malloc() vrací ukazatel na datový typ void
3 Programování v jazyce C a C# část I. (generický pointer na libovolný datový typ) je nutné tento pointer přetypovat pomocí operátoru přetypování (datový_typ *). V případě, že se nepodaří požadovanou paměť alokovat, vrací funkce hodnotu NULL. Pro ověření zda celá akce správně proběhla se provádí tento test: if(identifikátor_pointeru==null) printf("chyba alokace pameti neprobehla\n"); Pro samotné uložení hodnoty na místo kde ukazuje pointer se používá tento zápis: *identifikátor_pointeru=hodnota; Pointer je možné jako dynamickou proměnnou a po ukončení práce s tímto pointerem se musí uvolněnit pamět, kterou si pointer zabral při práci to se provede tímto příkazem : free(identifikátor_pointeru); Aby se pointer neodkazoval na místo, které již neexistuje ta se ukotví tímto příkazem: identifikátor_pointeru=null; Několik příkladů pro práci s pointery: Pro všechny platí definice: int q,*qw; Statistické použítí pointeru int q, *qw; q=3; do q vloží hodnotu 3 *qw =4; na adresu qw(kde je int) vloží hodnotu 4 q=*qw; do q vloží obsah z adresy qw
4 *qw=q; na adresu qw vloží obsah q qw=&q; naplní qw adresou q Programování v jazyce C a C# část I. Dynamické přiřazení pointeru. int q, *qw; q=4; qw=&qů *qw=4; před přiřazením hodnoty na adresu v qw musí být qw inicializován. Následující program ukáže použití pointerů, program načítá pomocí funkce cti_radku řádky z klávesnice a počítá kolik bylo mezer a malých písmen. Funkce cti_radku vrací hodnotu 1, když na řádce byly nějaké znaky a hodnotu 0, pokud řádka byla prázdná. Osobní zkušenost: Tento program je opsán z knihy Pavel Herout: Učebnice jazyka C, já jsem si ho osobně vyzkoušel a program funguje, ale zkoušel jsem ho pod systémem MS-DOS. Pochopení pointerů není na jednu přednášku, zde si to skutečně musí každý odprogramovat, aby pochopil sílu pointerů. Až po delší době a studiu jsem sám pointery pochopil, proto jsem volil jednoduchý program, pro jeho přehlednost a pochopitelnost. #include <stdio.h>
5 int cti_radek(int *p_mezera, int *p_male) { int c; int pocet=0; p_mezery=0; *p_male=0; while((c=getchar())!'\n') { pocet++; if(c==' ') (*p_mezery)++; else if (c>='a' && c<='z') (p_male)++ ; return ((pocet==0)? 0:1); main() { int mezery, male; Programování v jazyce C a C# část I. while(cti_radku(&mezery, &male)==1){ printf( naradce bylo %d mezer a %d malych pismen \n, mezery, male);
6 Kontrolní otázky 1. Vysvětlete pojem pointer 2. Napište program, který bude pracovat s pointery. Programování v jazyce C a C# část I. Použitá literatura: Miroslav Virius: C# pro zelenáče, 1.vydání, Neocortex, s.r.o Praha, 2002 Pavel Herout: Učebnice jazyka C, 3.vydání, KOOP České Budějovice, 1997 Miroslav Virius: od C++ k C#,1.vydání, KOOP České Budějovice, 2002
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Pole Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 14 Číslo: V/5 Programování v jazyce
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Programovací jazyky Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 8 Číslo: V/5 Programování
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Datové typy Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 5 Číslo: V/5 Programování v jazyce
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
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
Př. další použití pointerů
Př. další použití pointerů char *p_ch; int *p_i; p_ch = (char *) p_i; // konverze int * na char * 8 int i = 5; int *p_i; p_i = &i; POZOR!!!! scanf("%d", p_i); printf("%d", *p_i); Obecný pointer na cokoliv:
Strukturu lze funkci předat: (pole[i])+j. switch(výraz) velikost ukazatele
Strukturu lze funkci předat: hodnotou i pomocí ukazatele pouze pomocí ukazatele (reference na strukturu) pouze hodnotou (kopie struktury) (pole[i])+j adresa prvku na souřadnicích i, j adresa i-tého řádku
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
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
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
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Algoritmizace a programování Téma: Algoritmy Vyučující: Ing. Milan Káža Třída: EK2 Hodina: 3 Číslo: V/5 Programování
9. lekce Úvod do jazyka C 4. část Funkce, rekurze Editace, kompilace, spuštění Miroslav Jílek
9. lekce Úvod do jazyka C 4. část Funkce, rekurze Editace, kompilace, spuštění Miroslav Jílek 1/24 Editační prostření Kód programu lze editovat v jakémkoli textovém editoru. 2/24 Editační prostření Kód
ZPRO v "C" Ing. Vít Hanousek. verze 0.3
verze 0.3 Hello World Nejjednoduší program ukazující vypsání textu. #include using namespace std; int main(void) { cout
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
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Programovací jazyky Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 3 Číslo: V/5 Programování
6. lekce Úvod do jazyka C knihovny datové typy, definice proměnných základní struktura programu a jeho editace Miroslav Jílek
6. lekce Úvod do jazyka C knihovny datové typy, definice proměnných základní struktura programu a jeho editace Miroslav Jílek 1/73 https://en.cppreference.com internetová stránka s referencemi https://gedit.en.softonic.com/download
Ukazatele, dynamická alokace
Ukazatele, dynamická alokace 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 Mazanec Karel Richta,
Objektově orientované programování
10. října 2011 Pragmatické informace Volitelný předmět, zápočet: zápočtový program(s dokumentací), aktivní účast na cvičení(body v CodExu), praktický test, zkouška: zkoušková písemka na objektový návrh
Spojová implementace lineárních datových struktur
Spojová implementace lineárních datových struktur doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB
Základy programování (IZP)
Základy programování (IZP) Šesté 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 6. týden
Základy programování (IZP)
Základy programování (IZP) Páté 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 5. týden
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.
Základy programování (IZP)
Základy programování (IZP) Deváté 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 27.11.2017,
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é
Algoritmizace a programování
Algoritmizace a programování Strukturované proměnné Pole (array), ukazatele (pointer) Jazyk C České vysoké učení technické Fakulta elektrotechnická Ver.1.10 J. Zděnek 2015 Pole (array) (1) Pole je množina
Pointery II. Jan Hnilica Počítačové modelování 17
Pointery II 1 Pointery a pole Dosavadní způsob práce s poli zahrnoval: definici pole jakožto kolekce proměnných (prvků) jednoho typu, umístěných v paměti za sebou int pole[10]; práci s jednotlivými prvky
for (int i = 0; i < sizeof(hodnoty) / sizeof(int); i++) { cout<<hodonoty[i]<< endl; } cin.get(); return 0; }
Pole Kdybychom v jazyce C++chtěli načíst větší počet čísel nebo znaků a všechny bylo by nutné všechny tyto hodnoty nadále uchovávat v paměti počítače, tak by bylo potřeba v paměti počítače alokovat stejný
PB161 Programování v jazyce C++ Přednáška 4
PB161 Programování v jazyce C++ Přednáška 4 Dynamická alokace Kopírovací konstruktor Přetypování v C++ Nikola Beneš 12. října 2015 PB161 přednáška 4: dynamická alokace, kopírovací konstruktor, casting
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
Práce s pamětí a předávání parametrů. Úvod do programování 1
Práce s pamětí a předávání parametrů Úvod do programování 1 Motivace Zatím jsme se setkali s následjícími problémy : Proměnná existje / je dostpná jen v blok, kde vznikla Pole existje v blok, kde bylo
Základy programování (IZP)
Základy programování (IZP) Jedenácté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Gabriela Nečasová, inecasova@fit.vutbr.cz
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 -
Programovanie v jazyku C - to chce dynamiku
CVIČENIE 8/13 (S7) Programovanie v jazyku C - to chce dynamiku About rozdiel medzi statickou a dynamickou alokaciou pamate pre c objekty, spojkove zoznamy Basic knowledge kazda premenna musi mat pocas
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.
Lineární spojový seznam (úvod do dynamických datových struktur)
Lineární spojový seznam (úvod do dynamických datových struktur) Jan Hnilica Počítačové modelování 11 1 Dynamické datové struktury Definice dynamické struktury jsou vytvářeny za běhu programu z dynamicky
Funkce, intuitivní chápání složitosti
Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Funkce, intuitivní
Mělká a hluboká kopie
Karel Müller, Josef Vogel (ČVUT FIT) Mělká a hluboká kopie BI-PA2, 2011, Přednáška 5 1/28 Mělká a hluboká kopie Ing. Josef Vogel, CSc Katedra softwarového inženýrství Katedra teoretické informatiky, Fakulta
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í
Základy C++ I. Jan Hnilica Počítačové modelování 18
Základy C++ I 1 Přechod z C na C++ jazyk C++ je nadmnožinou jazyka C z hlediska syntaxe se jedná o velmi podobné jazyky, spolu s dalšími jazyky "céčkovské" rodiny, jako je např. C# každý platný program
Dynamická alokace paměti
Dynamická alokace paměti doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB TUO) Dynamická alokace
Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody
Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Dynamická alokace paměti Jazyky C a C++ poskytují programu možnost vyžádat si část volné operační paměti pro
Abstraktní třídy, polymorfní struktury
Karel Müller, Josef Vogel (ČVUT FIT) Abstraktní třídy, polymorfní struktury BI-PA2, 2011, Přednáška 9 1/32 Abstraktní třídy, polymorfní struktury Ing. Josef Vogel, CSc Katedra softwarového inženýrství
Aplikace Embedded systémů v Mechatronice. Michal Bastl A2/713a
Aplikace Embedded systémů v Mechatronice Michal Bastl A2/713a Aplikace Embedded systémů v Mechatronice Obsah přednášky: Opakování Pointery v C pole a řetězce předání funkci referencí Vlastní datové typy
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
Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
11a Dynamické dvourozměrné pole (obdobně vícerozměrné)
11a Dynamické dvourozměrné pole (obdobně vícerozměrné) počet hvězdiček == počet rozměrů (dimenze pole) int **p_2d; int radku, sloupcu; printf("zadejte pocet radku a sloupcu pole:"); scanf("%d,%d", &radku,
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Učební praxe Téma: Program Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 19-21 Číslo: V/5 Programování v jazyce
Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15
Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové
- 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)
Ú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í
Ukazatele #2, dynamická alokace paměti
Ukazatele #2, dynamická alokace paměti BI-PA1 Programování a Algoritmizace 1 Miroslav Baĺık, Ladislav Vagner a Josef Vogel Katedra teoretické informatiky a Katedra softwarového inženýrství Fakulta informačních
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Učební praxe Téma: Visual Studio Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 50-60 Číslo: V/5 Programování
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Visual Studio Vyučující: Ing. Milan Káža Třída: EK4 Hodina: 4-6 Číslo: V/5 Programování
IUJCE 07/08 Přednáška č. 1
Úvod do předmětu Literatura Záznamy přednášek a vaše poznámky Harbison, S. P., Steele, G. L.: Referenční příručka jazyka C Herout, P.: Učebnice jazyka C Kernighan, B. W., Ritchie, D. M.: The C Programming
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
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
Práce s polem a pamětí
3 Práce s polem a pamětí Inicializace jednorozměrného pole Jednorozměrné pole lze inicializovat přímo v deklaraci. int array[length] = {1, 5, 8, 9; array1d Prvky pole umístíte do složených závorek a oddělíte
BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky
Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Ukazatele BI-PA1
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í
Pole stručný úvod do začátku, podrobně později - zatím statická pole (ne dynamicky) - číslují se od 0
Pole stručný úvod do začátku, podrobně později - zatím statická pole (ne dynamicky) - číslují se od 0 int policko[100]; // tj. pole je od 0 do 99!!! policko[5] = 7; // pozor je to 6. prvek s indexem 5
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Učební praxe Téma: Visual Studio Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 68-70 Číslo: V/5 Programování
BI-PA1 Programování a algoritmizace 1 Katedra teoretické informatiky
Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Ukazatele BI-PA1
Struktury a dynamické proměnné
BPC1E počítačové cvičení 9 Struktury a dynamické proměnné Cílem cvičení je sestavit aplikaci, která bude používat vhodnou strukturu popisující daný objekt požadovanými parametry. Navazujícím cílem je deklarovat
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Visual Studio Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 19,2 Číslo: V/5 Programování
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
Martin Flusser. Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague. December 7, 2016
ZPRO cvičení 8 Martin Flusser Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague December 7, 2016 Outline I 1 Outline 2 Dynamické alokování paměti 3 Dynamická alokace
2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.
Informatika 10. 9. 2013 Jméno a příjmení Rodné číslo 1) Napište algoritmus pro rychlé třídění (quicksort). 2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus
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Ý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
Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) 28. prosince Fakulta elektrotechniky a informatiky Katedra softwarových technologií
9 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 28. prosince 2009 Struktury Struktury heterogenní struktura položky mohou být různých datových typů vystupuje jako jediný objekt
Např.: // v hlavičkovém souboru nebo na začátku // programu (pod include): typedef struct { char jmeno[20]; char prijmeni[20]; int rok_nar; } CLOVEK;
Struktury - složený datový typ. - datový typ jehož položky jsou jiné proměnné: - používá obvykle dohromady s příkazem typedef nechci vypisovat opakovaně složitou deklaraci pomocí typedef udělám nový datový
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Visual Studio Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 35-40 Číslo: V/5 Programování
Vícerozměrná pole. Úvod do programování 2 Tomáš Kühr
Vícerozměrná pole Úvod do programování 2 Tomáš Kühr Organizační záležitosti Konzultace Pracovna 5.043 Úterý 9.40 11.20 (oficiální) Pátek 8.30 9.40, dle potřeby Emailem tomas.kuhr@upol.cz Web předmětu:
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ý,
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
int => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:
13.4.2010 Typová konverze - změna jednoho datového typu na jiný - známe dva základní implicitní ("sama od sebe") a explicitní (výslovně vyžádána programátorem) - C je málo přísné na typové kontroly = dokáže
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ě
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Řetězce Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 17 Číslo: V/5 Programování v jazyce
Strukturované typy a ukazatele. Úvod do programování 1 Tomáš Kühr
Strukturované typy a ukazatele Úvod do programování 1 Tomáš Kühr Motivace Se základními datovými typy si sice vystačíme Někdy to ale může být nepříjemně nepřehledné Příklady: long double soucet(const long
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.
Lekce 19 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
Lekce 6 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
Algoritmizace. Cíle předmětu
Cíle předmětu Algoritmizace naučit se sestavovat algoritmy řešení jednoduchých problémů a zapisovat je v jazyku Java Organizace předmětu přednášky (učast nepovinná, ale doporučená) cvičení střídavě u tabule
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 =
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Ý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
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
Konstruktory a destruktory
Konstruktory a destruktory Nedostatek atributy po vytvoření objektu nejsou automaticky inicializovány hodnota atributů je náhodná vytvoření metody pro inicializaci, kterou musí programátor explicitně zavolat,
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
Struktura programu v době běhu
Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů
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é
Algoritmy I. Cvičení č. 2, 3 ALGI 2018/19
Algoritmy I Cvičení č. 2, 3 1 ALG I, informace Cvičící RNDr. Eliška Ochodková, Ph.D., kancelář EA439 eliska.ochodkova@vsb.cz www.cs.vsb.cz/ochodkova Přednášející doc. Mgr. Jiří Dvorský, Ph.D., kancelář
typová konverze typová inference
Seminář Java Programování v Javě II Radek Kočí Fakulta informačních technologií VUT Únor 2008 Radek Kočí Seminář Java Programování v Javě (2) 1/ 36 Téma přednášky Rozhraní: použití, dědičnost Hierarchie
4. Typ ukazatel, strukturované datové typy
Učební cíle a kompetence Anotace kapitoly Časová náročnost 4. Typ ukazatel, strukturované datové typy Po prostudování této kapitoly studující pochopí datový typ ukazatel, speciální ukazatelové operátory,
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
Základy programování 2 KMI/ZP2
Základy programování 2 KMI/ZP2 Petr Osička KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI Adresování paměti Adresování paměti Posloupnost bajtů očíslovaných od nuly podobně jako pole. Adresa = index
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
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
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
PB přednáška (12. října 2015)
PB161 3. přednáška (12. října 2015) Poznámky k domácímu úkolu Dynamická alokace Statická vs. dynamická alokace statická alokace na zásobníku (stack) deklarace uvnitř bloku (lokální proměnné) automatické