Bjarne Stroustrup: The C++ Programming Language Special Edition

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Bjarne Stroustrup: The C++ Programming Language Special Edition"

Átírás

1 I. kötet

2 A kiadvány a következõ angol eredeti alapján készült: Bjarne Stroustrup: The C++ Programming Language Special Edition Copyright 2000 by AT&T. All rights reserved. No part of this book, including interior desing, cover design, and icons, may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording, or otherwise) without the prior written permission of the publisher. Trademarked names appear throughout this book. Rather than list the names and entities that own the trademarks or insert a trademark symbol with each mention of the trademarked name, the publisher states that it is using the names for editorial purposes only and to the benefit of the trademark owner, with no intention of infringing upon that trademark. A szerzõ és a kiadó a lehetõ legnagyobb körültekintéssel járt el e kiadvány elkészítésekor. Sem a szerzõ, sem a kiadó nem vállal semminemû felelõsséget vagy garanciát a könyv tartalmával, teljességével kapcsolatban. Sem a szerzõ, sem a kiadó nem vonható felelõsségre bármilyen baleset vagy káresemény miatt, mely közvetve vagy közvetlenül kapcsolatba hozható e kiadvánnyal. Fordítás és magyar változat 2001 Szy György, Kiskapu Kft. Minden jog fenntartva! Translation and Hungarian edition 2001 György Szy, Kiskapu Kft. All rights reserved! Sorozatszerkesztõ: Szy György Mûszaki szerkesztõ: Csutak Hoffmann Levente Szakmai lektor: Porkoláb Zoltán Lektor: Rézmûves László Fordítók: Balázs Iván József, Bein Kornél, Ludányi Levente, Marcinkovics Tamás Felelõs kiadó a Kiskapu Kft. ügyvezetõ igazgatója 2001 Kiskapu Kft Budapest Népszínház u. 31. Tel: (+36-1) , (+36-1) Fax: (+36-1) kiskapu@kiskapu.hu Elsõ kötet ISBN: Összesítõ ISBN: ö Készült a debreceni Kinizsi nyomdában Felelõs vezetõ: Bördõs János

3 Tartalomjegyzék Bevezetés 1. fejezet Megjegyzések az olvasóhoz 1.1. A könyv szerkezete Példák és hivatkozások Gyakorlatok Megjegyzés az egyes C++-változatokhoz Hogyan tanuljuk a C++-t? A C++ jellemzõi Hatékonyság és szerkezet Filozófiai megjegyzés Történeti megjegyzés A C++ használata C és C Javaslatok C programozóknak Javaslatok C++ programozóknak Programozási megfontolások a C++-ban Tanácsok Hivatkozások fejezet Kirándulás a C++-ban 2.1. Mi a C++? Programozási megközelítések Eljárásközpontú programozás Változók és aritmetika Elágazások és ciklusok

4 x Mutatók és tömbök Moduláris programozás Külön fordítás Kivételkezelés Elvont adatábrázolás Típusokat leíró modulok Felhasználói típusok Konkrét típusok Absztrakt típusok Virtuális függvények Objektumorientált programozás Problémák a konkrét típusokkal Osztályhierarchiák Általánosított programozás Tárolók Általánosított algoritmusok Utóirat Tanácsok fejezet Kirándulás a standard könyvtárban 3.1. Bevezetés Helló, világ! A standard könyvtár névtere Kimenet Karakterláncok C stílusú karakterláncok Bemenet Tárolók Vektor Tartományellenõrzés Lista Asszociatív tömbök Szabványos tárolók Algoritmusok Bejárók használata Bejárótípusok Bemeneti és kimeneti bejárók Bejárások és predikátumok Tagfüggvényeket használó algoritmusok A standard könyvtár algoritmusai Matematika Komplex számok Vektoraritmetika Alapszintû numerikus támogatás A standard könyvtár szolgáltatásai Tanácsok

5 xi Elsõ rész Alapok 4. fejezet Típusok és deklarációk 4.1. Típusok Alaptípusok Logikai típusok Karaktertípusok Karakterliterálok Egész típusok Egész literálok Lebegõpontos típusok Lebegõpontos literálok Méretek Void Felsoroló típusok Deklarációk A deklarációk szerkezete Több név bevezetése Nevek Hatókörök Kezdeti értékadás Objektumok és balértékek Typedef Tanácsok Gyakorlatok fejezet Mutatók, tömbök és struktúrák 5.1. Mutatók Nulla Tömbök Tömbök feltöltése Karakterliterálok Tömbökre hivatkozó mutatók Tömbök bejárása Konstansok Mutatók és konstansok Referenciák Void-ra hivatkozó mutatók Struktúrák Egyenértékû típusok Tanácsok Gyakorlatok

6 xii 6. fejezet Kifejezések és utasítások 6.1. Egy asztali számológép Az elemzõ A bemeneti függvény Alacsonyszintû bemenet Hibakezelés A vezérlõ Fejállományok Parancssori paraméterek Megjegyzés a stílussal kapcsolatban Operátorok áttekintés Eredmények Kiértékelési sorrend Az operátorok sorrendje Bitenkénti logikai mûveletek Növelés és csökkentés Szabad tár Tömbök Memória-kimerülés Meghatározott típuskonverziók Konstruktorok Utasítások áttekintés Deklarációk mint utasítások Kiválasztó utasítások Deklarációk feltételekben Ciklusutasítások Deklarációk a for utasításban Goto Megjegyzések és behúzás Tanácsok Gyakorlatok fejezet Függvények 7.1. Függvénydeklarációk Függvénydefiníciók Statikus változók Paraméterátadás Tömb paraméterek Visszatérési érték Túlterhelt függvénynevek A túlterhelés és a visszatérési típus A túlterhelés és a hatókör A többértelmûség kézi feloldása Több paraméter feloldása Alapértelmezett paraméterek Nem meghatározott számú paraméter

7 xiii 7.7. Függvényre hivatkozó mutatók Makrók Feltételes fordítás Tanácsok Gyakorlatok fejezet Névterek és kivételek 8.1. Modulok és felületek Névterek Minõsített nevek Using deklarációk Using direktívák Több felület használata Felülettervezési módszerek A névütközések elkerülése Névtelen névterek Nevek keresése Névtér-álnevek Névterek összefûzése Kiválasztás Összefûzés és kiválasztás Névterek és régi kódok Névterek és a C Névterek és túlterhelés A névterek nyitottak Kivételek Dobás és elkapás A kivételek megkülönböztetése Kivételek a számológépben Más hibakezelõ módszerek Tanácsok Gyakorlatok fejezet Forrásfájlok és programok 9.1. Külön fordítás Összeszerkesztés Fejállományok A standard könyvtár fejállományai Az egyszeri definiálás szabálya Összeszerkesztés nem C++ kóddal Az összeszerkesztés és a függvényekre hivatkozó mutatók Fejállományok használata Egyetlen fejállományos elrendezés Több fejállományos elrendezés A számológép egyéb moduljai A fejállományok használata Állomány-õrszemek

8 xiv 9.4. Programok Kezdeti értékadás nem lokális változóknak A program befejezése Tanácsok Gyakorlatok Második rész Absztrakciós módszerek 10. fejezet Osztályok Bevezetés Osztályok Tagfüggvények Az elérhetõség szabályozása Konstruktorok Statikus tagok Osztály típusú objektumok másolása Konstans tagfüggvények Önhivatkozás Fizikai és logikai konstansok A mutable minõsítõ Struktúrák és osztályok Osztályon belüli függvénydefiníciók Hatékony felhasználói típusok Tagfüggvények Segédfüggvények Operátorok túlterhelése A konkrét osztályok jelentõsége Objektumok Destruktorok Alapértelmezett konstruktorok Létrehozás és megsemmisítés Lokális változók Objektumok másolása A szabad tár Osztály típusú tagok A tagok szükségszerû kezdeti értékadása Konstans tagok Tagok másolása Tömbök Lokális statikus adatok Nem lokális adatok Ideiglenes objektumok Az objektumok elhelyezése Uniók Tanácsok Gyakorlatok

9 xv 11. fejezet Operátorok túlterhelése Bevezetés Operátor függvények Egy- és kétoperandusú mûveletek Az operátorok elõre meghatározott jelentése Operátorok és felhasználói típusok Névterek operátorai Komplex szám típusok Tag és nem tag operátorok Vegyes módú aritmetika Kezdeti értékadás Másolás Konstruktorok és konverziók Literálok Kiegészítõ tagfüggvények Segédfüggvények Konverziós operátorok Többértelmûség Barát függvények A barát függvények elérése Barátok és tagfüggvények Nagy objektumok Alapvetõ operátorok Explicit konstruktorok Indexelés Függvényhívás Indirekció Növelés és csökkentés Egy karakterlánc osztályok Tanácsok Gyakorlatok fejezet Származtatott osztályok Bevezetés Származtatott osztályok Tagfüggvények Konstruktorok és destruktorok Másolás Osztályhierarchiák Típusmezõk Virtuális függvények Absztrakt osztályok Osztályhierarchiák tervezése Hagyományos osztályhierarchia Bírálat

10 xvi Absztrakt osztályok Egyéb megvalósítások Bírálat Az objektumok létrehozásának adott helyre korlátozása Osztályhierarchiák és absztrakt osztályok Tanácsok Gyakorlatok fejezet Sablonok Bevezetés Egy egyszerû karakterlánc sablon Sablonok meghatározása Sablonok példányosítása Sablon paraméterek Típusok egyenértékûsége Típusellenõrzés Függvénysablonok A függvénysablonok paraméterei Függvénysablonok túlterhelése Eljárásmód megadása sablonparaméterekkel Alapértelmezett sablonparaméterek Specializáció Specializációk sorrendje Függvénysablon specializáció Öröklõdés és sablonok Paraméterezés és öröklõdés Tag sablonok Öröklõdési viszonyok Sablonok konverziója A forráskód szerkezete Tanácsok Gyakorlatok fejezet Kivételkezelés Hibakezelés A kivételek más megközelítései A kivételek csoportosítása Származtatott kivételek Összetett kivételek A kivételek elkapása A kivételek továbbdobása Minden kivétel elkapása A kezelõk sorrendje Erõforrások kezelése Konstruktorok és destruktorok használata Auto_ptr

11 xvii Figyelmeztetés A kivételek és a new operátor Az erõforrások kimerülése Kivételek konstruktorokban Kivételek és a tagok kezdeti értékadása Kivételek és másolás Kivételek destruktorokban Kivételek, amelyek nem hibák Kivételek specifikációja A kivételek ellenõrzése Váratlan kivételek Kivételek leképezése Kivételek felhasználói leképezése Kivételek típusának visszaállítása El nem kapott kivételek A kivételek és a hatékonyság A hibakezelés egyéb módjai Szabványos kivételek Tanácsok Gyakorlatok fejezet Osztályhierarchiák Bevezetés és áttekintés Többszörös öröklõdés A többértelmûség feloldása Öröklõdés és using deklarációk Ismétlõdõ bázisosztályok Felülírás Virtuális bázisosztályok Virtuális bázisosztályok programozása A többszörös öröklõdés használata A virtuális bázisosztályok függvényeinek felülírása Hozzáférés-szabályozás Védett tagok A védett tagok használata Bázisosztályok elérése A többszörös öröklõdés és az elérhetõség A using deklarációk és az elérhetõség Futási idejû típusinformáció Dynamic_cast Referenciák dinamikus típuskényszerítése Osztályhierarchiák bejárása Statikus és dinamikus konverzió Osztályobjektumok felépítése és megsemmisítése

12 xviii Typeid és kiterjesztett típusinformáció Kiterjesztett típusinformáció Az RTTI helyes és helytelen használata Tagra hivatkozó mutatók Bázis- és származtatott osztályok A szabad tár Memóriafoglalás tömbök számára Virtuális konstruktorok Tanácsok Gyakorlatok

13 II. kötet

14 A kiadvány a következõ angol eredeti alapján készült: Bjarne Stroustrup: The C++ Programming Language Special Edition Copyright 2000 by AT&T. All rights reserved. No part of this book, including interior desing, cover design, and icons, may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording, or otherwise) without the prior written permission of the publisher. Trademarked names appear throughout this book. Rather than list the names and entities that own the trademarks or insert a trademark symbol with each mention of the trademarked name, the publisher states that it is using the names for editorial purposes only and to the benefit of the trademark owner, with no intention of infringing upon that trademark. A szerzõ és a kiadó a lehetõ legnagyobb körültekintéssel járt el e kiadvány elkészítésekor. Sem a szerzõ, sem a kiadó nem vállal semminemû felelõsséget vagy garanciát a könyv tartalmával, teljességével kapcsolatban. Sem a szerzõ, sem a kiadó nem vonható felelõsségre bármilyen baleset vagy káresemény miatt, mely közvetve vagy közvetlenül kapcsolatba hozható e kiadvánnyal. Fordítás és magyar változat 2001 Szy György, Kiskapu Kft. Minden jog fenntartva! Translation and Hungarian edition 2001 György Szy, Kiskapu Kft. All rights reserved! Sorozatszerkesztõ: Szy György Mûszaki szerkesztõ: Csutak Hoffmann Levente Szakmai lektor: Porkoláb Zoltán Lektor: Rézmûves László Fordítók: Balázs Iván József, Bein Kornél, Ludányi Levente, Marcinkovics Tamás Felelõs kiadó a Kiskapu Kft. ügyvezetõ igazgatója 2001 Kiskapu Kft Budapest Népszínház u. 31. Tel: (+36-1) , (+36-1) Fax: (+36-1) kiskapu@kiskapu.hu Második kötet ISBN: Összesítõ ISBN: ö Készült a debreceni Kinizsi nyomdában Felelõs vezetõ: Bördõs János A könyv az Oktatási Minisztérium támogatásával, a Felsõoktatási Pályázatok Irodája által lebonyolított felsõoktatási tankönyvtámogatási program keretében jelent meg.

15 Tartalomjegyzék Harmadik rész A standard könyvtár 16. fejezet A könyvtár szerkezete és a tárolók A standard könyvtár Tervezési korlátozások A standard könyvtár szerkezete Nyelvi elemek támogatása A tárolók szerkezete Egyedi célú tárolók és bejárók Tárolók közös õssel A standard könyvtár tárolói A vektor Típusok Bejárók Az elemek elérése Konstruktorok Veremmûveletek Listamûveletek Az elemek kiválasztása Méret és kapacitás További tagfüggvények Segédfüggvények Vector<bool> Tanácsok Feladatok fejezet Szabványos tárolók A szabványos tárolók Mûveletek áttekintés Tárolók áttekintés Ábrázolás Megkötések az elemekre Összehasonlítások További relációs mûveletek

16 viii Sorozatok A vector A list Áthelyezés, rendezés, összefésülés Mûveletek a lista elején További mûveletek A deque Sorozat-átalakítók A stack A queue A priority_queue Asszociatív tárolók A map Típusok Bejárók és párok Indexelés Konstruktorok Összehasonlítások Mûveletek asszociatív tömbökkel Listamûveletek További mûveletek A multimap A set A multiset Majdnem-tárolók Karakterláncok A valarray Bithalmazok Konstruktorok Bitkezelõ mûveletek További mûveletek Beépített tömbök Új tárolók létrehozása A hash_map Ábrázolás és létrehozás Keresések Törlés és átméretezés Hasítás További hasított asszociatív tárolók Tanácsok Gyakorlatok fejezet Algoritmusok és függvényobjektumok Bevezetõ A standard könyvtár algoritmusainak áttekintése Sorozatok és tárolók Bemeneti sorozatok Függvényobjektumok

17 ix Függvényobjektumok bázisosztályai Predikátumok A predikátumok áttekintése Aritmetikai függvényobjektumok Lekötõk, átalakítók és tagadók Lekötõk Tagfüggvény-átalakítók Függvényre hivatkozó mutatók átalakítói Tagadók Nem módosító algoritmusok sorozatokon A for_each A find függvénycsalád A count() Egyenlõség és eltérés Keresés Módosító algoritmusok sorozatokra Másolás Transzformációk Ismétlõdõ elemek törlése Rendezési szempont Helyettesítés Törlés Feltöltés és létrehozás Megfordítás és elforgatás Elemek felcserélése Rendezett sorozatok Rendezés Bináris keresés Összefésülés Felosztás Halmazmûveletek sorozatokon A kupac Minimum és maximum Permutációk C stílusú algoritmusok Tanácsok Gyakorlatok fejezet Bejárók és memóriafoglalók Bevezetés Bejárók és sorozatok A bejárók mûveletei A bejáró jellemzõi Bejáró-kategóriák Beszúró bejárók Visszafelé haladó bejárók Adatfolyamok bejárói Átmeneti tárak adatfolyamokhoz

18 x Ellenõrzött bejárók Kivételek, tárolók és algoritmusok Memóriafoglalók A szabványos memóriafoglaló Felhasználói memóriafoglalók Általánosított memóriafoglalók Elõkészítetlen memória Dinamikus memória C stílusú helyfoglalás Tanácsok Gyakorlatok fejezet Karakterláncok Bevezetés Karakterek Karakterjellemzõk A basic_string osztály Típusok Bejárók Az elemek elérése Konstruktorok Hibák Értékadás Átalakítás C stílusú karakterláncra Összehasonlítás Beszúrás Összefûzés Keresés Csere Részláncok Méret és kapacitás Ki- és bemeneti mûveletek Felcserélés A C standard könyvtára C stílusú karakterláncok Karakterek osztályozása Tanácsok Gyakorlatok fejezet Adatfolyamok Bevezetõ Kimenet Kimeneti adatfolyamok Beépített típusok kimenete Felhasználói típusok kimenete Virtuális kimeneti függvények Bemenet Bemeneti adatfolyamok Beépített típusok bemenete

19 xi Az adatfolyam állapota Karakterek beolvasása Felhasználói típusok beolvasása Kivételek Adatfolyamok összekötése Õrszemek Formázás Formázási állapot Formázási állapot lemásolása Egész kimenet Lebegõpontos szám kimenet Kimeneti mezõk Mezõk igazítása Módosítók Módosítók, melyek paramétereket várnak Szabványos ki- és bemeneti módosítók Felhasználói módosítók Fájl- és karakterlánc-folyamok Fájlfolyamok Adatfolyamok lezárása Karakterlánc-folyamok Ki- és bemeneti átmeneti tárak Kimeneti adatfolyamok és átmeneti tárolók Bemeneti adatfolyamok és átmeneti tárolók Az adatfolyamok és az átmeneti tárak kapcsolata Adatfolyamok átmeneti tárolása Helyi sajátosságok Adatfolyam-visszahívások C stílusú ki- és bemenet Tanácsok Feladatok fejezet Számok Bevezetés A számtípusok korlátozásai Korlátozási makrók Szabványos matematikai függvények Vektormûveletek Valarray létrehozása A valarray indexelése és az értékadás Mûveletek tagfüggvényként Nem tagfüggvényként megvalósított mûveletek Szeletek A slice_array Ideiglenes változók, másolás, ciklusok Általánosított szeletek Maszkok Indirekt tömbök Komplex aritmetika

20 xii Általánosított numerikus algoritmusok Az accumulate() Az inner_product Növekményes változás Véletlenszámok Tanácsok Gyakorlatok Negyedik rész Tervezés a C++ segítségével 23.fejezet Fejlesztés és tervezés Áttekintés Bevezetés Célok és eszközök A fejlesztési folyamat A fejlesztés körforgása Tervezési célok Tervezési lépések Elsõ lépés: keressünk osztályokat Második lépés: határozzuk meg a mûveleteket Harmadik lépés: határozzuk meg az összefüggéseket Negyedik lépés: határozzuk meg a felületeket Osztályhierarchiák újraszervezése Modellek használata Kísérletezés és elemzés Tesztelés A programok karbantartása Hatékonyság Vezetés Újrahasznosítás Méret és egyensúly Egyének Hibrid tervezés Jegyzetek Tanácsok fejezet Tervezés és programozás Áttekintés A tervezés és a programozási nyelv Az osztályok figyelmen kívül hagyása Az öröklés elkerülése A statikus típusellenorzés figyelmen kívül hagyása A programozás elkerülése Az osztályhierarchiák kizárólagos használata Osztályok Mit ábrázolnak az osztályok? Osztályhierarchiák Osztályhierarchián belüli függések Tartalmazási kapcsolatok

Eric Harmon Delphi/Kylix alapú adatbázis-kezelés Eric Harmon Delphi/Kylix alapú adatbáziskezelés A kiadvány a következõ angol eredeti alapján készült: Eric Harmon: Delphi/Kylix Database Development Authorized

Részletesebben

1. Bevezetés A C++ nem objektumorientált újdonságai 3

1. Bevezetés A C++ nem objektumorientált újdonságai 3 Előszó xiii 1. Bevezetés 1 2. A C++ nem objektumorientált újdonságai 3 2.1. A C és a C++ nyelv 3 2.1.1. Függvényparaméterek és visszatérési érték 3 2.1.2. A main függvény 4 2.1.3. A bool típus 4 2.1.4.

Részletesebben

1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben?

1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben? 1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben? 3. Ismertesse a névtér fogalmát! 4. Mit értünk a "változó hatóköre"

Részletesebben

Büki András UNIX/Linux héjprogramozás Büki András: UNIX/Linux héjprogramozás Büki András Felelõs kiadó a Kiskapu Kft. ügyvezetõ igazgatója 2002 Kiskapu Kft. 1081 Budapest Népszínház u. 29. Tel: (+36-1)

Részletesebben

A TANTÁRGY ADATLAPJA

A TANTÁRGY ADATLAPJA A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș-Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika 1.3 Intézet Magyar Matematika és Informatika 1.4 Szakterület

Részletesebben

A szerzõrõl... xi Bevezetés... xiii

A szerzõrõl... xi Bevezetés... xiii TARTALOMJEGYZÉK A szerzõrõl...................................................... xi Bevezetés...................................................... xiii I. rész A Visual Basic 2005 környezet 1. óra Irány

Részletesebben

Programozás módszertan

Programozás módszertan Programozás módszertan p. Programozás módszertan Operátorok túlterhelése a C++ nyelvben Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA TANSZÉK Bevezetés Programozás

Részletesebben

A TANTÁRGY ADATLAPJA

A TANTÁRGY ADATLAPJA A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș-Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika 1.3 Intézet Magyar Matematika és Informatika 1.4 Szakterület

Részletesebben

Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?

Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás? Bevezetés Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések Forráskód Hibajegyzék p2p.wrox.com xiii xiii xiv xiv xvi xvii xviii

Részletesebben

1. Template (sablon) 1.1. Függvénysablon Függvénysablon példányosítás Osztálysablon

1. Template (sablon) 1.1. Függvénysablon Függvénysablon példányosítás Osztálysablon 1. Template (sablon) 1.1. Függvénysablon Maximum függvény megvalósítása függvénynév túlterheléssel. i n l i n e f l o a t Max ( f l o a t a, f l o a t b ) { return a>b? a : b ; i n l i n e double Max (

Részletesebben

C++ Standard Template Library (STL)

C++ Standard Template Library (STL) Programozási Nyelvek és Fordítóprogramok Tanszék Programozási Nyelvek I. Témák 1 STL alapok 2 STL fogalmak 3 Konténerek 4 Iterátorok 5 Funktorok C++ STL Ne fedezzük fel újra spanyolviaszt! Sok adatszerkezet/algoritmus

Részletesebben

Programozás. Bevezetés. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék

Programozás. Bevezetés. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék Programozás Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. február 11. Tantárgy célja, szükséges ismeretek Tantárgy célja,

Részletesebben

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama 10. évfolyam: 105 óra 11. évfolyam: 140 óra 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra 36 óra OOP 14 óra Programozási

Részletesebben

1.1. A forrásprogramok felépítése Nevek és kulcsszavak Alapvető típusok. C programozás 3

1.1. A forrásprogramok felépítése Nevek és kulcsszavak Alapvető típusok. C programozás 3 Darvay Zsolt Típusok és nevek a forráskódban Állandók és változók Hatókörök és az előfeldolgozó Bevitel és kivitel Kifejezések Utasítások Mutatók Függvények Struktúrák és típusok Állománykezelés C programozás

Részletesebben

Programozás. C++ típusok, operátorok. Fodor Attila

Programozás. C++ típusok, operátorok. Fodor Attila Programozás C++ típusok, operátorok Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. március 4. Deklaráció és definíció C++

Részletesebben

Mintavételes szabályozás mikrovezérlő segítségével

Mintavételes szabályozás mikrovezérlő segítségével Automatizálási Tanszék Mintavételes szabályozás mikrovezérlő segítségével Budai Tamás budai.tamas@sze.hu http://maxwell.sze.hu/~budait Tartalom Mikrovezérlőkről röviden Programozási alapismeretek ismétlés

Részletesebben

Fejlett programozási nyelvek C++ Iterátorok

Fejlett programozási nyelvek C++ Iterátorok Fejlett programozási nyelvek C++ Iterátorok 10. előadás Antal Margit 2009 slide 1 Témakörök I. Bevezetés II. Iterátor definíció III. Iterátorok jellemzői IV. Iterátorkategóriák V. Iterátor adapterek slide

Részletesebben

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

Bánsághi Anna 2014 Bánsághi Anna 1 of 68 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív

Részletesebben

2 Access 2016 zsebkönyv

2 Access 2016 zsebkönyv 2 Access 2016 zsebkönyv BBS-INFO Kiadó, 2016. 4 Access 2016 zsebkönyv Bártfai Barnabás, 2016. Minden jog fenntartva! A könyv vagy annak oldalainak másolása, sokszorosítása csak a szerző írásbeli hozzájárulásával

Részletesebben

Programozási technológia

Programozási technológia Programozási technológia Generikus osztályok Gyűjtemények Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Generikus osztályok Javaban az UML paraméteres osztályainak a generikus (sablon) osztályok felelnek

Részletesebben

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2) Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.05. -1- Függvények C program egymás mellé rendelt függvényekből

Részletesebben

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3) Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Függvények C program egymás mellé rendelt függvényekből áll. A függvény (alprogram) jó absztrakciós eszköz a programok

Részletesebben

1. Alapok. Programozás II

1. Alapok. Programozás II 1. Alapok Programozás II Elérhetőség Név: Smidla József Elérhetőség: smidla dcs.uni-pannon.hu Szoba: I916 2 Irodalom Bjarne Stroustrup: A C++ programozási nyelv 3 Irodalom Erich Gamma, Richard Helm, Ralph

Részletesebben

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1 A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található meg. A CD-melléklet használata Bevezetés xi xiii 1. Elméleti áttekintés 1 1.1. Adatmodellezés 3 1.2. Táblák, oszlopok és sorok

Részletesebben

Programozási nyelvek (ADA)

Programozási nyelvek (ADA) Programozási nyelvek (ADA) Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 1. előadás Hasznos weboldal http://kto.web.elte.hu Program felépítése Programegységek (program unit) eljárások (procedure)

Részletesebben

A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés A C programozási nyelv I. Bevezetés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv I. (bevezetés) CBEV1 / 1 A C nyelv története Dennis M. Ritchie AT&T Lab., 1972 rendszerprogramozás,

Részletesebben

A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés A C programozási nyelv I. Bevezetés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv I. (bevezetés) CBEV1 / 1 A C nyelv története Dennis M. Ritchie AT&T Lab., 1972 rendszerprogramozás,

Részletesebben

Bevezetés a programozásba II. 5. Előadás: Másoló konstruktor, túlterhelés, operátorok

Bevezetés a programozásba II. 5. Előadás: Másoló konstruktor, túlterhelés, operátorok Bevezetés a programozásba II 5. Előadás: Másoló konstruktor, túlterhelés, operátorok Emlékeztető struct Vektor { int meret, *mut; Vektor(int meret); int szamlal(int mit); }; int Vektor::szamlal(int mit)

Részletesebben

1. Bevezetés szeptember 9. BME Fizika Intézet. Szám. szim. labor ea. Tőke Csaba. Tudnivalók. feladat. Tematika. Moodle Házi feladatok

1. Bevezetés szeptember 9. BME Fizika Intézet. Szám. szim. labor ea. Tőke Csaba. Tudnivalók. feladat. Tematika. Moodle Házi feladatok Számítógépes szimulációk 1. Bevezetés BME Fizika Intézet 2015. szeptember 9. Bevezetés A félév menete C-ismétlés, 1. rész Oktatók: Nagyfalusi Balázs: nagyfalusi@phy.bme.hu, F3 211. : tcsaba@eik.bme.hu,

Részletesebben

JAVA PROGRAMOZÁS 2.ELŐADÁS

JAVA PROGRAMOZÁS 2.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 2.ELŐADÁS 2014-2015 tavasz Tömbök, osztályok, objektumok, konstruktorok Tömbök 2 Referencia típusú változó Elemtípus Primitív Referencia: osztály,

Részletesebben

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós október 11. Széchenyi István Egyetem, Gy r

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós október 11. Széchenyi István Egyetem, Gy r Programozás alapjai (GKxB_INTM023) Széchenyi István Egyetem, Gy r 2018. október 11. Függvények Mi az a függvény (function)? Programkód egy konkrét, azonosítható, paraméterezhet, újrahasznosítható blokkja

Részletesebben

Már megismert fogalmak áttekintése

Már megismert fogalmak áttekintése Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése Eseménykezelési módszerek 2 Már megismert fogalmak

Részletesebben

A szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok

A szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok A szemantikus elemzés helye Forrásprogram Forrás-kezelő (source handler) Lexikális elemző (scanner) A szemantikus elemzés feladatai Fordítóprogramok előadás (A, C, T szakirány) Szintaktikus elemző (parser)

Részletesebben

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:

Részletesebben

Mindenki abból a három tantárgyból tesz szigorlatot, amelyet hallgatott.

Mindenki abból a három tantárgyból tesz szigorlatot, amelyet hallgatott. Szigorlati témakörök az Informatika (szigorlat) (BMEVIAU0181) c. tantárgyat felváltó Informatika (BMEGERIEEIS) tantárgyból az okleveles energetikai mérnökképzés (2N-0E) hallgatói számára 1. tantárgy: Programozás

Részletesebben

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós március 3. Széchenyi István Egyetem, Gy r

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós március 3. Széchenyi István Egyetem, Gy r Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. március 3. Függvények Mi az a függvény (function)? Programkód egy konkrét, azonosítható, paraméterezhet, újrahasznosítható blokkja Miért

Részletesebben

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar Programozás I. 3. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Antal Gábor 1 Primitív típusok Típus neve Érték Alap érték Foglalt tár Intervallum byte Előjeles egész 0 8 bit

Részletesebben

Bánsághi Anna 2014 Bánsághi Anna 1 of 33

Bánsághi Anna 2014 Bánsághi Anna 1 of 33 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 7. ELŐADÁS - ABSZTRAKT ADATTÍPUS 2014 Bánsághi Anna 1 of 33 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív

Részletesebben

Java II. I A Java programozási nyelv alapelemei

Java II. I A Java programozási nyelv alapelemei Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak

Részletesebben

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós április 4. Széchenyi István Egyetem, Gy r

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós április 4. Széchenyi István Egyetem, Gy r Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. április 4. Számok rendezése Feladat: Fejlesszük tovább úgy a buborék rendez algoritmust bemutató példát, hogy a felhasználó adhassa meg a

Részletesebben

Programozás II. 2. Dr. Iványi Péter

Programozás II. 2. Dr. Iványi Péter Programozás II. 2. Dr. Iványi Péter 1 C++ Bjarne Stroustrup, Bell Laboratórium Első implementáció, 1983 Kezdetben csak precompiler volt C++ konstrukciót C-re fordította A kiterjesztés alapján ismerte fel:.cpp.cc.c

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Sztringek Osztályok alapjai Sztringek Szöveges adatok kezelése Sztring Karakterlánc (string): Szöveges adat Karaktertömbként tárolva A szöveg végét a speciális

Részletesebben

Kifejezések. A programozás alapjai előadás. Operátorok. Kifejezések. Operátorok precedenciája. Operátorok precedenciája

Kifejezések. A programozás alapjai előadás. Operátorok. Kifejezések. Operátorok precedenciája. Operátorok precedenciája A programozás alapjai 1 Kifejezések 5. előadás Híradástechnikai Tanszék Operandusok Literál Azonosító Kifejezés Kifejezések Precedencia Melyik hajtódik először végre? Asszociativitás Balról jobbra vagy

Részletesebben

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*;

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*; Java osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. ( Előfeltétel 12. Tétel ) Az osztály egy olyan típus leíró struktúra, amely

Részletesebben

C programozási nyelv

C programozási nyelv C programozási nyelv Előfeldolgozó utasítások Dr Schuster György 2011 május 3 Dr Schuster György () C programozási nyelv Előfeldolgozó utasítások 2011 május 3 1 / 15 A fordítás menete Dr Schuster György

Részletesebben

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double Programozás alapjai C nyelv 4. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.10.. -1- Mit tudunk már? Típus fogalma char, int, float,

Részletesebben

Tartalomjegyzék. Köszönetnyilvánítás. 1. Az alapok 1

Tartalomjegyzék. Köszönetnyilvánítás. 1. Az alapok 1 Köszönetnyilvánítás Bevezetés Kinek szól a könyv? Elvárt előismeretek A könyv témája A könyv használata A megközelítés alapelvei Törekedjünk az egyszerűségre! Ne optimalizáljunk előre! Felhasználói interfészek

Részletesebben

Programozási nyelvek 6. előadás

Programozási nyelvek 6. előadás Programozási nyelvek 6. előadás Szempontok Programozási nyelvek osztályozása Felhasználói kör (amatőr, professzionális) Emberközelség (gépi nyelvektől a természetes nyelvekig) Számítási modell (hogyan

Részletesebben

Generikus osztályok, gyűjtemények és algoritmusok

Generikus osztályok, gyűjtemények és algoritmusok Programozási, gyűjtemények és algoritmusok bejárása Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 bejárása 2 bejárása 2 Java-ban és UML-ben bejárása Az UML-beli paraméteres osztályok a Java

Részletesebben

Visual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés.

Visual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. Visual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. Az osztály egy olyan típus leíró struktúra, amely tartalmaz adattagokat

Részletesebben

GPU Lab. 4. fejezet. Fordítók felépítése. Grafikus Processzorok Tudományos Célú Programozása. Berényi Dániel Nagy-Egri Máté Ferenc

GPU Lab. 4. fejezet. Fordítók felépítése. Grafikus Processzorok Tudományos Célú Programozása. Berényi Dániel Nagy-Egri Máté Ferenc 4. fejezet Fordítók felépítése Grafikus Processzorok Tudományos Célú Programozása Fordítók Kézzel assembly kódot írni nem érdemes, mert: Egyszerűen nem skálázik nagy problémákhoz arányosan sok kódot kell

Részletesebben

I. rész: A Microsoft Visual C# és a Microsoft Visual Studio 2005 bemutatása. 1. Üdvözöljük a C# világában! 3

I. rész: A Microsoft Visual C# és a Microsoft Visual Studio 2005 bemutatása. 1. Üdvözöljük a C# világában! 3 Köszönetnyilvánítás Bevezetés Honnan kezdjük a könyv olvasását? A könyvben használt konvenciók és egyéb jelölések Konvenciók Egyéb jelölések Online kiegészítő tartalom Technológiai frissítések Rendszerkövetelmények

Részletesebben

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3) Programozás alapjai C nyelv 4. gyakorlat Szeberényi Imre BME IIT Mit tudunk már? Típus fogalma char, int, float, double változók deklarációja operátorok (aritmetikai, relációs, logikai,

Részletesebben

Programozási nyelvek a közoktatásban alapfogalmak I. előadás

Programozási nyelvek a közoktatásban alapfogalmak I. előadás Programozási nyelvek a közoktatásban alapfogalmak I. előadás Szempontok Programozási nyelvek osztályozása Felhasználói kör (amatőr, professzionális) Emberközelség (gépi nyelvektől a természetes nyelvekig)

Részletesebben

Foglalkozási napló a 20 /20. tanévre

Foglalkozási napló a 20 /20. tanévre Foglalkozási napló a 20 /20. tanévre Műszaki informatikus szakma gyakorlati oktatásához OKJ száma: 54 41 05 A napló vezetéséért felelős: A napló megnyitásának dátuma: A napló lezárásának dátuma: Tanulók

Részletesebben

Hardver leíró nyelvek (HDL)

Hardver leíró nyelvek (HDL) Hardver leíró nyelvek (HDL) Benesóczky Zoltán 2004 A jegyzetet a szerzıi jog védi. Azt a BME hallgatói használhatják, nyomtathatják tanulás céljából. Minden egyéb felhasználáshoz a szerzı belegyezése szükséges.

Részletesebben

C++ programozási nyelv

C++ programozási nyelv C++ programozási nyelv Gyakorlat - 13. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. december A C++ programozási nyelv Soós Sándor 1/10 Tartalomjegyzék Objektumok

Részletesebben

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 0.1. Az algoritmikus tudás szintjei Ismeri (a megoldó algoritmust) Érti Le tudja pontosan

Részletesebben

Interfészek. PPT 2007/2008 tavasz.

Interfészek. PPT 2007/2008 tavasz. Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése 2 Már megismert fogalmak áttekintése Objektumorientált

Részletesebben

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós augusztus 29. Széchenyi István Egyetem, Gy r

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós augusztus 29. Széchenyi István Egyetem, Gy r Programozás alapjai (GKxB_INTM023) Széchenyi István Egyetem, Gy r 2019. augusztus 29. Feladat: írjuk ki az els 10 természetes szám négyzetét! #i n c l u d e i n t main ( v o i d ) { p r

Részletesebben

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs Programozás I. 1. előadás: Algoritmusok alapjai Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember 7. Sergyán

Részletesebben

Bevezetés a C++ programozási nyelvbe

Bevezetés a C++ programozási nyelvbe Bevezetés a C++ programozási nyelvbe Miskolci Egyetem Általános Informatikai Tanszék CPP0 / 1 Története A C++ programozási nyelv a C programozási nyelv objektum orientált kiterjesztése. Az ANSI-C nyelvet

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök

Részletesebben

Komputeralgebra Rendszerek

Komputeralgebra Rendszerek Komputeralgebra Rendszerek Összetett adatszerkezetek a MAPLE -ben Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. március 11. TARTALOMJEGYZÉK 1 of 66 TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Kifejezéssorozatok

Részletesebben

Az alábbi példában a Foo f(5); konstruktor hívása után mennyi lesz f.b értéke? struct Foo { int a, b; Foo(int c):a(c*2),b(c*3) {} };

Az alábbi példában a Foo f(5); konstruktor hívása után mennyi lesz f.b értéke? struct Foo { int a, b; Foo(int c):a(c*2),b(c*3) {} }; A C++ kódokban lévő makrókat melyik egység dolgozza fel az alábbiak közül? preprocessor A szabványos C++-ban nem is írhatunk makrókat (csak C-ben) assembler linker Az alábbi példában a Foo f(5); konstruktor

Részletesebben

Struktúra nélküli adatszerkezetek

Struktúra nélküli adatszerkezetek Struktúra nélküli adatszerkezetek Homogén adatszerkezetek (minden adatelem azonos típusú) osztályozása Struktúra nélküli (Nincs kapcsolat az adatelemek között.) Halmaz Multihalmaz Asszociatív 20:24 1 A

Részletesebben

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája Adatszerkezetek Összetett adattípus Meghatározói: A felvehető értékek halmaza Az értékhalmaz struktúrája Az ábrázolás módja Műveletei Adatszerkezet fogalma Direkt szorzat Minden eleme a T i halmazokból

Részletesebben

Bevezetés a programozásba Előadás: A const

Bevezetés a programozásba Előadás: A const Bevezetés a programozásba 2 6. Előadás: A const ISMÉTLÉS Interface - Implementation struct Particle { int x,y; unsigned char r,g,b; void rajzol(); }; }; void Particle::rajzol() { gout

Részletesebben

Java programozási nyelv

Java programozási nyelv Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék

Részletesebben

A TANTÁRGY ADATLAPJA

A TANTÁRGY ADATLAPJA A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș-Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika 1.3 Intézet Magyar Matematika és Informatika 1.4 Szakterület

Részletesebben

2 Excel 2016 zsebkönyv

2 Excel 2016 zsebkönyv 2 Excel 2016 zsebkönyv BBS-INFO Kiadó, 2016. 4 Excel 2016 zsebkönyv Bártfai Barnabás, 2016. Minden jog fenntartva! A könyv vagy annak oldalainak másolása, sokszorosítása csak a szerző írásbeli hozzájárulásával

Részletesebben

Programozási nyelvek Python

Programozási nyelvek Python Programozási nyelvek Python A nyelv története és jellemzői 2 A nyelv története Tervező Guido van Rossum (1956, Hollandia) Befolyásoló nyelvek ABC (pl. blokkok jelölése behúzással); Modula-3; C; C++; Unix

Részletesebben

C# mesteri szinten 21 nap alatt

C# mesteri szinten 21 nap alatt Tartalomjegyzék Elsõ hét 1. nap Ismerkedés a C#-tel Mi is az a C#?............................................... 4 A programozás elõkészületei................................... 4 A programfejlesztési

Részletesebben

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10. Programozás I. 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2012. szeptember 10. Sergyán (OE NIK) Programozás I. 2012. szeptember 10. 1 /

Részletesebben

Statikus adattagok. Statikus adattag inicializálása. Speciális adattagok és tagfüggvények. Általános Informatikai Tanszék

Statikus adattagok. Statikus adattag inicializálása. Speciális adattagok és tagfüggvények. Általános Informatikai Tanszék Speciális adattagok és tagfüek Miskolci Egyetem Általános Informatikai Tanszék CPP7 / 1 Statikus adattagok Bármely adattag lehet static tárolási osztályú A statikus adattag az osztály valamennyi objektuma

Részletesebben

C programozási nyelv Pointerek, tömbök, pointer aritmetika

C programozási nyelv Pointerek, tömbök, pointer aritmetika C programozási nyelv Pointerek, tömbök, pointer aritmetika Dr. Schuster György 2011. június 16. C programozási nyelv Pointerek, tömbök, pointer aritmetika 2011. június 16. 1 / 15 Pointerek (mutatók) Pointerek

Részletesebben

Objektumok inicializálása

Objektumok inicializálása Objektumok inicializálása Miskolci Egyetem Általános Informatikai Tanszék Objektumok inicializálása CPP4 / 1 Tartalom public adattagok inicializálása felsorolással konstruktor objektum tömbök osztály típusú

Részletesebben

Informatika terméktervezőknek

Informatika terméktervezőknek Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások

Részletesebben

Adatszerkezetek 1. előadás

Adatszerkezetek 1. előadás Adatszerkezetek 1. előadás Irodalom: Lipschutz: Adatszerkezetek Morvay, Sebők: Számítógépes adatkezelés Cormen, Leiserson, Rives, Stein: Új algoritmusok http://it.inf.unideb.hu/~halasz http://it.inf.unideb.hu/adatszerk

Részletesebben

Programozás. C++ osztályok. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.

Programozás. C++ osztályok. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein. Programozás C++ osztályok Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. április 8. Csak bázisosztályként használt/értelmezhető

Részletesebben

Programozási nyelvek a közoktatásban alapfogalmak II. előadás

Programozási nyelvek a közoktatásban alapfogalmak II. előadás Programozási nyelvek a közoktatásban alapfogalmak II. előadás Szintaxis, szemantika BNF szintaxisgráf absztrakt értelmező axiomatikus (elő- és utófeltétel) Pap Gáborné. Szlávi Péter, Zsakó László: Programozási

Részletesebben

Imperatív programozás

Imperatív programozás Imperatív programozás 2. Előadás Python alapok Elérhetőség Tejfel Máté Déli épület, 2.616 matej@elte.hu http://matej.web.elte.hu Python Script nyelv Értelmezett (interpretált) Dinamikus típusrendszer Gyors

Részletesebben

2 Outlook 2016 zsebkönyv

2 Outlook 2016 zsebkönyv 2 Outlook 2016 zsebkönyv BBS-INFO Kiadó, 2016. 4 Outlook 2016 zsebkönyv Bártfai Barnabás, 2016. Minden jog fenntartva! A könyv vagy annak oldalainak másolása, sokszorosítása csak a szerző írásbeli hozzájárulásával

Részletesebben

3. modul - Szövegszerkesztés

3. modul - Szövegszerkesztés 3. modul - Szövegszerkesztés Érvényes: 2009. február 1-jétől Az alábbiakban ismertetjük a 3. modul (Szövegszerkesztés) syllabusát, amely a gyakorlati vizsga alapját képezi. A modul célja Ezen a vizsgán

Részletesebben

Java II. I A Java programozási nyelv alapelemei

Java II. I A Java programozási nyelv alapelemei Java2 / 1 Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2009. 02. 09. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve

Részletesebben

Bevezetés a programozásba II. 8. Előadás: Osztályok, objektumok, osztályszintű metódusok

Bevezetés a programozásba II. 8. Előadás: Osztályok, objektumok, osztályszintű metódusok Bevezetés a programozásba II 8. Előadás: Osztályok, objektumok, osztályszintű metódusok vektor.h #ifndef VEKTOR_H #define VEKTOR_H class Vektor { int meret, *mut; public: Vektor(int meret); int szamlal(int

Részletesebben

Mutatók és mutató-aritmetika C-ben március 19.

Mutatók és mutató-aritmetika C-ben március 19. Mutatók és mutató-aritmetika C-ben 2018 március 19 Memória a Neumann-architektúrában Neumann-architektúra: a memória egységes a címzéshez a természetes számokat használjuk Ugyanabban a memóriában van:

Részletesebben

1) Hány byte-on tárol a C++ egy karaktert (char)? implementáció-függő ( viszont lásd 79. megjegyzés ) 1 8 4

1) Hány byte-on tárol a C++ egy karaktert (char)? implementáció-függő ( viszont lásd 79. megjegyzés ) 1 8 4 1) Hány byte-on tárol a C++ egy karaktert (char)? implementáció-függő ( viszont lásd 79. megjegyzés ) 1 8 4 2) Hány byte-on tárol a C++ egy float-ot? implementáció-függő 6 4 8 3) Hány byte-on tárol a C++

Részletesebben

Programozás alapjai gyakorlat. 2. gyakorlat C alapok

Programozás alapjai gyakorlat. 2. gyakorlat C alapok Programozás alapjai gyakorlat 2. gyakorlat C alapok 2016-2017 Bordé Sándor 2 Forráskód, fordító, futtatható állomány Először megírjuk a programunk kódját (forráskód) Egyszerű szövegszerkesztőben vagy fejlesztőkörnyezettel

Részletesebben

Adatszerkezetek és algoritmusok

Adatszerkezetek és algoritmusok 2009. november 13. Ismétlés El z órai anyagok áttekintése Ismétlés Specikáció Típusok, kifejezések, m veletek, adatok ábrázolása, típusabsztakció Vezérlési szerkezetek Függvények, paraméterátadás, rekurziók

Részletesebben

Java programozási nyelv 5. rész Osztályok III.

Java programozási nyelv 5. rész Osztályok III. Java programozási nyelv 5. rész Osztályok III. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez Pásztor Attila Algoritmizálás és programozás tankönyv az emeltszintű érettségihez 3. ADATTÍPUSOK...26 3.1. AZ ADATOK LEGFONTOSABB JELLEMZŐI:...26 3.2. ELEMI ADATTÍPUSOK...27 3.3. ÖSSZETETT ADATTÍPUSOK...28

Részletesebben

OOP #14 (referencia-elv)

OOP #14 (referencia-elv) OOP #14 (referencia-elv) v1.0 2003.03.19. 21:22:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_14-1 - E jegyzet

Részletesebben

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10. Programozás I. 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2012. szeptember 10. Sergyán (OE NIK) Programozás I. 2012. szeptember 10. 1 /

Részletesebben

Steve Graham, Sim Simeonov, Toufic Boubez, Doug Davis, Glen Daniels, Yuichi Nakamura, Ryo Neyama Java alapú webszolgáltatások XML, SOAP, WSDL, UDDI Java alapú webszolgáltatások XML, SOAP, WSDL, UDDI A

Részletesebben

Operációs rendszerek gyak.

Operációs rendszerek gyak. Operációs rendszerek gyak. AWK programozás Hirling Dominik Szegedi Tudományegyetem AWK AWK: a pattern scanning and processing language mintaelemző-és feldolgozó nyelv bármilyen szövegből minták alapján

Részletesebben

Fordító részei. Fordító részei. Kód visszafejtés. Izsó Tamás szeptember 29. Izsó Tamás Fordító részei / 1

Fordító részei. Fordító részei. Kód visszafejtés. Izsó Tamás szeptember 29. Izsó Tamás Fordító részei / 1 Fordító részei Kód visszafejtés. Izsó Tamás 2016. szeptember 29. Izsó Tamás Fordító részei / 1 Section 1 Fordító részei Izsó Tamás Fordító részei / 2 Irodalom Izsó Tamás Fordító részei / 3 Irodalom Izsó

Részletesebben

Programozás II. 3. gyakorlat Objektum Orientáltság C++-ban

Programozás II. 3. gyakorlat Objektum Orientáltság C++-ban Programozás II. 3. gyakorlat Objektum Orientáltság C++-ban Tartalom OOP ismétlés Osztályok létrehozása Adattagok láthatóságai, elnevezési ajánlások Konstruktor, destruktor this pointer Statikus és dinamikus

Részletesebben

C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18

C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18 C# Nyelvi Elemei Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei 2013 1 / 18 Tartalomjegyzék 1 Object 2 Típusok 3 String 4 RegEx Tóth Zsolt (Miskolci Egyetem) C# Nyelvi

Részletesebben

Bevezetés a programozásba Előadás: Objektumszintű és osztályszintű elemek, hibakezelés

Bevezetés a programozásba Előadás: Objektumszintű és osztályszintű elemek, hibakezelés Bevezetés a programozásba 2 7. Előadás: Objektumszű és osztályszű elemek, hibakezelés ISMÉTLÉS Osztály class Particle { public: Particle( X, X, Y); virtual void mozog( ); ); virtual void rajzol( ) const;

Részletesebben