„A programozás alapjai 1 (régi)” változatai közötti eltérés

Deeagle (vitalap | szerkesztései)
Deeagle (vitalap | szerkesztései)
Nincs szerkesztési összefoglaló
28. sor: 28. sor:


*'''Nagy házi feladat:''' Ezt a házi feladatot nem osztályozzák le, de a gyakveznek el kell fogadnia, ahhoz, hogy jegyet lehessen kapni félév végén. A nagy házi feladat során különböző heteken checkpointok vannak, ahol is előírják, hogy be kell mutatni az adott checkpointig elkészítendő munkát a gyakvezéreknek (fel kell tölteni egy portálba PDF-ben). A végén a házit is be kell majd mutatni, és meg kell védeni. A checkpointokról és kritériumokról alább lehet bővebb információt szerezni.
*'''Nagy házi feladat:''' Ezt a házi feladatot nem osztályozzák le, de a gyakveznek el kell fogadnia, ahhoz, hogy jegyet lehessen kapni félév végén. A nagy házi feladat során különböző heteken checkpointok vannak, ahol is előírják, hogy be kell mutatni az adott checkpointig elkészítendő munkát a gyakvezéreknek (fel kell tölteni egy portálba PDF-ben). A végén a házit is be kell majd mutatni, és meg kell védeni. A checkpointokról és kritériumokról alább lehet bővebb információt szerezni.
Checkpointok:
*#Téma megválasztása, a megoldandó probléma kitalálása.
*#Adatszerkezet leírása: itt le kell írni, hogy mit fognak tartalmazni a struktúrák, azoknak mik a típusai, a struktúrák, hogy kapcsolódnak egymáshoz, és milyen szerkezetet alkotnak így. Ezt minden kis aprósággal együtt. (Van/nincs strázsa, nullpointer zárt, stb.) Ill. érdemes még a fájlok pontos szerkezetét is ide írni.
*#Főbb algoritmusok leírása: Le kell írni, hogy milyen algoritmussal (vagy függvénnyel) mit akarunk elérni, és azt hogy ezt milyen lépéseken keresztül érjük el, és mindezt viszonylagos részletességgel. Általában nem kérik az adatkiírás, és adatbekérés algoritmusát, de bármilyen más keresést, kiválasztást, számítást igen.
*#A végső dokumentáció: A dokumentációnak olyannak kell lennie, hogy ha valaki más ugyanezzel a problémával kezdd el foglalkozni, és látja a dokumentációt, akkor egyéb kérdés nélkül ''reprodukálni'' tudná a házit (ami többé kevésbé megegyezne a hallgatóéval). Egyébként csak össze kell fűzni az előzőeket és kiegészíteni a tesztelés résszel. A tesztelés részben csak azt kell leírni, hogy milyen, és miért pont azokkal az adatokkal teszteltél


*'''KisZH:''' Az első és az utolsó gyakorlatot leszámítva minden gyakorlat elején pár pontos (1-3) tesztet kell írni. A sikeres kisZH-hoz legalább 1 pontot el kell érni. A 14 gyakorlatokból általában 1 elmarad, így a 11-ből legalább 7-et kell sikeresen megírni.  
*'''KisZH:''' Az első és az utolsó gyakorlatot leszámítva minden gyakorlat elején pár pontos (1-3) tesztet kell írni. A sikeres kisZH-hoz legalább 1 pontot el kell érni. A 14 gyakorlatokból általában 1 elmarad, így a 11-ből legalább 7-et kell sikeresen megírni.  
52. sor: 47. sor:


== Házi feladat ==
== Házi feladat ==
  Teendők:
A régi rendszerben még a központilag adták fel a feladatot. Mindenkinek más volt a feladata, és gép ellenőrizte a programot. Ezért hagytuk meg ezeket, mert gyakorolni még lehet rajtuk.
Migrált anyagok átmentése
  Ide jönnek a régi házik
Régi rendszerről pár szó
Most házi feladatot a hallgató találhatja ki. Az alapja az, hogy valami adatbázis szerű adatszerkezetet lehessen felépíteni, amiben lehet keresni. (Pl.: hipermarketek és azok árucikkeik). Az adatokat fájlok tárolják, amikből a program építi fel az adatszerkezetet.
Új rendszer bemutatása
A kritériumok következők:
Kritériumok megírása
*Legyen benne két különböző struktúrából álló dinamikus adatszerkezet (fésűs lista vagy ahhoz hasonló, dinamikus tömb nem jó, láncolt lista nem elég)
Checkpointok megírása
*Mindkét struktúrának legyen 3-4 tagja.
-Denke Á.
*A két struktúra típus két külön fájlba legyen mentve, amiből az egyik szöveges, a másik bináris állomány.
*A kérdés ne legyen túl triviális, és muszáj legyen hozzá felépíteni a teljes adatszerkezetet. (Pl.: Ha csak a AUCHAN termékeiből keresnénk a legolcsóbbat az nem jó, mert akkor megoldáshoz elhagyhatnánk a többi hipermarketet és csak egy láncolt listát kapnánk)
Ha nem tud a hallgató saját magától kitalálni valamit, akkor a gyakvez fog adni egy sablon házit.
 
A végső beadás előtt lépésenként kell előre meghatározott időpontokra benyújtani a részletek. Ezek az úgynevezett checkpointok.
Checkpointok:
#Téma megválasztása, a megoldandó probléma kitalálása.
#Adatszerkezet leírása: itt le kell írni, hogy mit fognak tartalmazni a struktúrák, azoknak mik a típusai, a struktúrák hogy kapcsolódnak egymáshoz, és milyen szerkezetet alkotnak így. Ezt minden kis apróságával együtt. (Van/nincs strázsa, nullpointer zárt, stb.) Ill. érdemes még a fájlok pontos szerkezetét is ide írni.
#Főbb algoritmusok leírása: Le kell írni, hogy milyen algoritmussal (vagy függvénnyel) mit akarunk elérni, és azt hogy ezt milyen lépéseken keresztül érjük el, és mindezt viszonylagos részletességgel. Általában nem kérik az adatkiírás, és adatbekérés algoritmusát, de bármilyen más keresést, kiválasztást, számítást igen.
#A végső dokumentáció: A dokumentációnak olyannak kell lennie, hogy ha valaki más ugyanezzel a problémával kezdd el foglalkozni, és látja a dokumentációt, akkor egyéb kérdés nélkül ''reprodukálni'' tudná a házit (ami többé kevésbé megegyezne a hallgatóéval). Egyébként csak össze kell fűzni az előzőeket és kiegészíteni a tesztelés résszel. A tesztelés részben csak azt kell leírni, hogy milyen, és miért pont azokkal az adatokkal teszteltél.


== Nagyzárthelyi ==
== Nagyzárthelyi ==