A programozás alapjai 2
- A programozás alapjai oldal több tárgyhoz is tartozhat. Ha nem vagy biztos a választásodban, nézd meg az egyértelműsítő lapot!
A programozás alapjai 2 előkövetelménye A programozás alapjai 1 kreditjének megszerzése, ezáltal a C programozási nyelv ismerete. A tárgy célja, hogy folytassa a számítógépes problémamegoldás módszereinek és alapvető eszközeinek megismertetését annak érdekében, hogy a hallgatók azt a későbbiek folyamán képesek legyenek hatékonyan alkalmazni. Ennek eszköze a C nyelv ismeretének elmélyítése, valamint a bevezetés az objektumorientált programozásba a C++ programozási nyelv által.
Az Informatika 2 felvételéhez szükséges A programozás alapjai 2 kreditjének megszerzése.
Követelmények
- Előkövetelmény: A programozás alapjai 1 című tárgy teljesítése.
- Jelenlét: A laborok 70%-án kötelező a részvétel.
- Laborok: A számítógépes laborokon a laborvezetők beugróval ellenőrzik a felkészültséget, az elégtelen felkészültség hiányzásnak minősül.
- Nagy házi feladat: A félév során egy nagy házi feladat beadása kötelező. Az elfogadott feladatot a laborvezetők értékelik az utolsó laboron - elfogadott vagy nem elfogadott, pont nem jár érte. Nem elfogadható nagy házi feladat esetén a tárgyból szerzett jegy elégtelen. Némelyik laborvezető azt is megengedi, hogy házi feladatként egy egyedi, megfelelő bonyolultságú saját ötletet valósítsatok meg.
- KisZH: A félév során a laborokon 5 db kis zárthelyit íratnak a laborvezetők, ezek közül legalább háromnak el kell érnie az elégséges szintet (40%), de összességében az öt kiszhnak az összpontszám 40%-át el kell érni! A félévközi jegybe a három legjobban sikerült összege számít (KZH). A kis zárthelyik pótlására nincs lehetőség. Természetesen amikor épp kisZh van, akkor azzal ellenőrzik a jelenlétet nem beugróval. A sikertelen kis zárthelyi ennélfogva hiányzásnak számít.
- NagyZH: A tárgyból két nagy zárthelyit íratnak, a két nagyZH-ból együttesen legalább 50%-ot kell elérni az elégséges jegyhez, külön-külön nincs minimumkövetelmény. Eredménye (NZH) kétszeres súllyal számít a végső jegy kialakításában. A nagy zárthelyik a pótlási héten pótolhatók/javíthatók, a rosszabbul sikerült zárthelyi pótolható/javítható.
- Félévközi jegy: Végeredmény% = (4 * ZH1 pont + 5 * ZH2 pont + KisZH pont / 0.3) / 3
- Ponthatárok:
- (Eredmény [E])
E % Jegy 0 - 39 1 40 - 54 2 55 - 69 3 70 - 84 4 85 - 100 5
Segédanyagok
- Kiemelt segédanyag: pdf jegyzet - online formában is, letölthető példafeladatokkal itt: jegyzet
Siroki Péter HaT-os öregtag által készített C++ jegyzet. A témakörök sorrendje a tantárgytematikát követi. Az esetleges hibákat a wiki@sch.bme.hu címre vár
- Bjarne Stroustrup: C++ – A C++ megalkotójának könyve
- Általában a parancssori argumentumokról
Előadásjegyzet Dr. Levendovszky Tihamér 2007-es előadásai alapján: (Kissé hiányosak és eléggé vázlatosak, de azért vannak benne hasznos anyagok)
- 2. Előadás: Bevezetés
- 3. Előadás: Objektumok, konstruktor, destruktor
- 4. Előadás: Dinamikus memóriafoglalás
- 5. Előadás: Osztály, névterek
- 6. Előadás: Statikus tagok, operátor-túlterhelés
- 7. Előadás: Öröklés
- 11. Előadás: Sablonok
- 12. Előadás: Kivételkezelés
Kis zárthelyik
Az előadáson és gyakorlaton leadott, laboron begyakorolt anyagokból áll a kis zh anyaga. A kis zh-n főként az elméleti fogalmakat és szintaktikát kérik számon, sosincs benne nehéz algoritmus implementálása. Típusfeladatok:
- Elméleti, kifejtős kérdés néhány pontért (fogalmak elmagyarázása).
- Szöveges specifikáció alapján osztály tervezése és implementálása.
- UML diagram alapján öröklési hierarchia tervezése és az osztályok implementálása.
Az itt összegyűjtött néhány feladatsor csupán iránymutatás, de ettől merőben eltérő feladatsorok is lehetnek! Gyakorlásra viszont jók a régi mintatantervben íratott kis zárthelyik:
Nagy zárthelyik
Az első zárthelyit a 7. héten íratják és 25 pontot lehet rajta szerezni. Ebből 3 feladat valamilyen fogalom elmagyarázása, saját példával szemléltetése (ez 15 pontot ér), és egy nagyobb, tervezős feladat, (mely 10 pontot ér).
A második zárthelyit az utolsó héten íratják, és azon 20 pont szerezhető. Minden évben hasonló felépítésű, négyféle típusfeladatot tartalmaznak:
- Generikus (template) konténerosztály elkészítése. (5 pont)
- Hibakeresés: Meg kell mondani, hogy egy adott kódrészlet hibás-e, ha igen, fordítási/futási idejű-e a hiba. (5 pont)
- Adott C++ lehetőség (pl: operátor-túlterhelés, kivételkezelés) visszakérdezése példával. (4 pont)
- Egyszerű osztályhierarchia implementálása szöveges specifikáció alapján. (6 pont)
- Kidolgozott ZH feladatok - Ihász Dávid munkája. Sok átfedés van a fenti kidolgozással, azonban a fenti kidolgozást nézzétek elsősorban, mert ott ellenőrzötten helyes megoldások vannak, valamint a ZH feladatok nagy része is azok közül kerül ki.
- Összefoglaló az 1. és 2. zárthelyihez - Forstner Bertalan előadó által kiadott blackbox kérdések kidolgozása. Az anyag az 1. és a 2. zárthelyi témaköreit fedi le. (Molnár Martin, 2018)
Korábbi ZH-k
- Első:
Tippek
- Mindenképpen érdemes előadásra járni, mivel Dr. Forstner Bertalan kiváló előadó, aki a táblára írt példákon keresztül magyarázza el a nyelv részleteit, tehát nem csak a gyakorlatokon találkozhatsz először az adott kódokkal. Ha rendesen figyelsz, akkor már az előadásokon el lehet sajátítani az anyag nagy részét.
- További nagy előny még a Prog 1-gyel szemben, hogy a nagyházit egyes gyakorlatvezetőknél te magad választhatod ki egy megadott listából, de lehetőség van egyéni ötlet megvalósítására is. Aki érdeklődik a programozás iránt, vagy szeretne valami egyedit megvalósítani, annak mindenképpen ajánlott egy kellő nehézségű saját ötlet, hiszen sokkal könnyebb egy számodra érdekes problémán rágódni, mint egy olyanon, ami teljesen hidegen hagy.
- A nagyZH készülés során érdemes végigoldani minél több (lehetőleg az összes) példát a ZH gyakorló feladatok közül, ugyanis a ZH feladatok 90%-a általában ezek közül a feladatok közül kerül ki egy az egyben. Ha innét mindent végigoldottál és értettél is, akkor a zárthelyin semmilyen meglepetés nem érhet.
AUT C++ példatár: c++
- Érdemes a félév során aktívan részt venni a gyakorlatokon és a laborokon, illetve igényes munkát végezni az otthoni feladatokon, hiszen a gyakorlatvezető saját belátása alapján plusz-mínusz fél jegyet módosíthat a kialakult félév végi osztályzatodon. Extrém esetben, akár gyenge hármas nagyzárthelyivel is szerezhető jeles érdemjegy, amennyiben a többi követelményt maximális pontszámmal teljesítetted.
- Kis és nagyZh-kra való készülésben nagyon hasznos tud lenni a Szoftverfejlesztés C++ nyelven című könyv. Az előadás is épít rá, így ismétlésnek is tökéletes. A NagyZh-knál tényleg ajánlott a C++ példatárat "forgatni", készségszinten begyakorolni és megérteni.
Bevezetők | |
---|---|
1. félév | |
2. félév | |
3. félév | |
4. félév | |
5. félév | |
6. félév | |
7. félév | |
Megjegyzés: | A csillaggal jelölt négy szakirány-előkészítő tárgy közül egy a 6. félévben.
|