„A programozás alapjai 2” változatai közötti eltérés
Nincs szerkesztési összefoglaló |
Nincs szerkesztési összefoglaló |
||
| (26 közbenső módosítás, amit 13 másik szerkesztő végzett, nincs mutatva) | |||
| 1. sor: | 1. sor: | ||
{{Tantárgy | {{Tantárgy | ||
|nev=A programozás alapjai 2 | |nev=A programozás alapjai 2 | ||
| | |tárgykód=VIAUAA01 | ||
| | |régitárgykód=VIAUA116 | ||
|szak=villany | |szak=villany | ||
|kredit= | |kredit=6 | ||
|felev=2 | |felev=2 | ||
|kereszt=nincs | |kereszt=nincs | ||
| 16. sor: | 16. sor: | ||
|targyhonlap=https://www.aut.bme.hu/Course/VIAUA116 | |targyhonlap=https://www.aut.bme.hu/Course/VIAUA116 | ||
}} | }} | ||
{{Egyértelműsítő|programozás alapjai|A programozás alapjai (egyértelműsítő lap)}} | |||
'''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. | '''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 | Az [[Informatika 2]] felvételéhez szükséges A programozás alapjai 2 kreditjének megszerzése. | ||
==Követelmények== | ==Követelmények== | ||
*'''Előkövetelmény:''' [[A programozás alapjai 1]] című tárgy teljesítése. | *'''Előkövetelmény:''' [[A programozás alapjai 1]] című tárgy teljesítése. | ||
*'''Jelenlét:''' A | *'''Jelenlét:''' A laborok 70%-án kötelező a részvétel. | ||
*'''Laborok:''' A számítógépes laborokon a laborvezetők | *'''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 | *'''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 | *'''KisZH:''' A félév során a laborokon '''5 db kis zárthelyi'''t í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 | *'''NagyZH:''' A tárgyból '''két nagy zárthelyi'''t í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:''' | *'''Félévközi jegy:''' Végeredmény% = (4 * ZH1 pont + 5 * ZH2 pont + KisZH pont / 0.3) / 3 | ||
*Ponthatárok: | |||
*(Eredmény [E]) | |||
:{| class="wikitable" style="text-align: center; width: 120px; height: 40px;" | |||
!E %!!Jegy | |||
|- | |||
|0 - 39|| 1 | |||
|- | |||
|40 - 54|| 2 | |||
|- | |||
|55 - 69|| 3 | |||
|- | |||
|70 - 84|| 4 | |||
|- | |||
|85 - 100|| 5 | |||
|} | |||
==Segédanyagok== | ==Segédanyagok== | ||
*<span style="color: red">Kiemelt</span> segédanyag: [[Media:Prog2_jegyzet.pdf|pdf jegyzet]] - online formában is, letölthető példafeladatokkal itt: [http://psiroki.github.io/ccjegyzet/ jegyzet] | *<span style="color: red">Kiemelt</span> segédanyag: [[Media:Prog2_jegyzet.pdf|pdf jegyzet]] - online formában is, letölthető példafeladatokkal itt: [http://psiroki.github.io/ccjegyzet/ 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 | 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 | ||
*[[Média:Prog2_Bjarne_Stroustrup_C++.PDF|Bjarne Stroustrup: C++]] – A C++ megalkotójának könyve | *[[Média:Prog2_Bjarne_Stroustrup_C++.PDF|Bjarne Stroustrup: C++]] – A C++ megalkotójának könyve | ||
*[[Média:Prog2_Általában_a_parancssori_argumentumokról.PDF|Általában a parancssori argumentumokról]] | *[[Média:Prog2_Általában_a_parancssori_argumentumokról.PDF|Á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) | |||
Kissé hiányosak és eléggé vázlatosak, de azért vannak benne hasznos anyagok | |||
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_2_Bevezetés.PDF|2. Előadás: Bevezetés]] | *[[Média:Prog2_Levendovszky_előadásjegyzet_2007_2_Bevezetés.PDF|2. Előadás: Bevezetés]] | ||
| 55. sor: | 69. sor: | ||
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_12_Kivételkezelés.PDF|12. Előadás: Kivételkezelés]] | *[[Média:Prog2_Levendovszky_előadásjegyzet_2007_12_Kivételkezelés.PDF|12. Előadás: Kivételkezelés]] | ||
== | ==Kis zárthelyik== | ||
A | 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: | |||
** [[Média:Prog2_3kisZH_2013tavasz.jpg|2013. tavasz - 3. kisZH]] | |||
** [[Média:Prog2_4kisZH_2013tavasz.jpg|2013. tavasz - 4. kisZH]] | |||
==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 | 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. | #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. | #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. | #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. | #Egyszerű osztályhierarchia implementálása szöveges specifikáció alapján. (6 pont) | ||
*[[Média:Prog2_zh_összefoglaló_Ihász_Dávid.PDF|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. | *[[Média:Prog2_zh_összefoglaló_Ihász_Dávid.PDF|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. | ||
*[[Media:prog2_blackboxZH_2018.pdf|Ö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ő: | |||
** [[Media:Prog2_ZH_2018-03-22.pdf|2018.03.22]] | |||
==Tippek== | ==Tippek== | ||
| 80. sor: | 105. sor: | ||
AUT C++ példatár: [http://www.aut.bme.hu/CppPeldatar/Tags/El%C5%91sz%C3%B3 c++] | AUT C++ példatár: [http://www.aut.bme.hu/CppPeldatar/Tags/El%C5%91sz%C3%B3 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. | *É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. | |||
{{Lábléc_-_Villamosmérnök_alapszak 2014}} | {{Lábléc_-_Villamosmérnök_alapszak 2014}} | ||