„A programozás alapjai 2” változatai közötti eltérés

A VIK Wikiből
Ugrás a navigációhoz Ugrás a kereséshez
(Tiboo átnevezte a(z) A programozás alapjai 2 lapot a következő névre: A programozás alapjai 2 (régi))
 
a
 
(34 közbenső módosítás, amit 18 másik szerkesztő végzett, nincs mutatva)
1. sor: 1. sor:
#ÁTIRÁNYÍTÁS [[A programozás alapjai 2 (régi)]]
+
{{Tantárgy
 +
|nev=A programozás alapjai 2
 +
|tárgykód=VIAUAA01
 +
|régitárgykód=VIAUA116
 +
|szak=villany
 +
|kredit=6
 +
|felev=2
 +
|kereszt=nincs
 +
|tanszék=AUT
 +
|kiszh=5 db
 +
|nagyzh=2 db
 +
|vizsga=nincs
 +
|hf=1 nagy
 +
|levlista=vprog2{{kukac}}sch.bme.hu
 +
|tad=https://www.vik.bme.hu/kepzes/targyak/VIAUA116/
 +
|targyhonlap=https://www.aut.bme.hu/Course/VIAUA116
 +
}}
 +
 
 +
'''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á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 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:''' 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==
 +
 
 +
*<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 vár
 +
 
 +
*[[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]]
 +
 
 +
'''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)
 +
 
 +
*[[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_3_Objektumok,_konstruktor,_destruktor.PDF|3. Előadás: Objektumok, konstruktor, destruktor]]
 +
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_4_Dinamikus_memóriafoglalás.PDF|4. Előadás: Dinamikus memóriafoglalás]]
 +
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_5_Osztály,_névterek.PDF|5. Előadás: Osztály, névterek]]
 +
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_6_Statikus_tagok,_operátor-túlterhelés.PDF|6. Előadás: Statikus tagok, operátor-túlterhelés]]
 +
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_7_Öröklés.PDF|7. Előadás: Öröklés]]
 +
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_11_Sablonok.PDF|11. Előadás: Sablonok]]
 +
*[[Média:Prog2_Levendovszky_előadásjegyzet_2007_12_Kivételkezelés.PDF|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:
 +
** [[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 ''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)
 +
 
 +
*[[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==
 +
 
 +
*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 [http://users.hszk.bme.hu/~kz612/nagyzh.htm 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: [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.
 +
*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}}

A lap jelenlegi, 2020. augusztus 7., 21:18-kori változata

A programozás alapjai 2
Tárgykód
VIAUAA01
Régi tárgykód
VIAUA116
Általános infók
Szak
villany
Kredit
6
Ajánlott félév
2
Keresztfélév
nincs
Tanszék
AUT
Követelmények
KisZH
5 db
NagyZH
2 db
Házi feladat
1 nagy
Vizsga
nincs
Elérhetőségek
Levlista
vprog2
Hiba a bélyegkép létrehozásakor: Nem lehet a bélyegképet a célhelyre menteni
@sch.bme.hu


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

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)

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:

  1. Generikus (template) konténerosztály elkészítése. (5 pont)
  2. 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)
  3. Adott C++ lehetőség (pl: operátor-túlterhelés, kivételkezelés) visszakérdezése példával. (4 pont)
  4. 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

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.