Beadandó feladatok
A kész feladatokat (forrást dokumentációval(PDF) együtt) egy <Neptun kód>.zip (pl. A8US50.zip) állományba csomagolva a Neptun e-learning rendszerén keresztül kell leadni.
Csak a funkcionálisan működő, a kitűzött kiegészítő követelményeknek
megfelelő és elektronikusan készült dokumentációval rendelkező programot
fogadunk el. A bemutatott programnak a kitűzött feladatot kell megoldania.
Kiegészítő követelményeken egyrészt a nem-funkcionális követelményeket (például
adatok beolvasásának módja, program újraindíthatósága, stb.), másrészt a
kódolási konvenciók betartását (például standard C++ elemek használata, előírt
kódolási stílus), harmadrészt egyéb, a feladat megoldásához használt eszköz
(például függvények használata, modulokra bontás, osztály használata) kötelező
alkalmazását értjük. A kiegészítő követelmények halmozódnak, azaz egy újabb
beadandó feladatnál érvényesek a korábbi feladatoknál előírt követelmények is. A
megoldáshoz elektronikusan készült dokumentációt kell készíteni. Nem kérünk
teljes dokumentációt. Mindig az adott beadandó feladat leírása határozza meg
azt, hogy mi szerepeljen benne. (A mintadokumentáció ennél általában bővebb.) A
dokumentáció mindig tartalmazza tesztelési esetek listáját. Az egyes
tesztesetekhez mindig meg kell adni egy konkrét adatsort és a várt eredményt.
Fájlból való olvasás esetén ezek a tesztesetek egy-egy fájlban legyenek meg. A
beadandó feladatokat 0-5 ponttal értékeljük. A beadási határidők a
feladatcsoportoknál találhatók. A határidőre beadott, a követelményeknek
megfelelő munka 5 pontot ér, késés esetén hetente egy ponttal kevesebbet. Csak
az kaphat gyakorlati jegyet, akinek mindkét munkája legalább 1 pontos lett.
A félév során 2 beadandó feladatot kell elkészíteni.
Alap követelmények: A programkód legyen (megjegyzésekkel, üres sorokkal,
tabulátorral) jól tagolt, hűen tükrözze az absztrakt program szerkezetét, amelyet programozási tételekre
támaszkodva kell elkészíteni. A program működése legyen öndokumentáló (derüljön ki a futtatás alatt,
hogy mi a feladat, milyen feltételeknek megfelelő adatokat vár a felhasználótól, az eredmény jól
értelmezhetően jelenjen meg). Forrásprogramját projektbe ágyazza bele! Fájlból olvasott bemenő adatok esetén
az adatokat írja ki a konzolablakba! Csak az adatellenőrzéshez és a program ismételhető futtatásához
használhat do-while() utasítást!
Dokumentáció: A dokumentáció tartalmazza a feladat szövegét, specifikációját, a megoldáshoz felhasznált
programozási tételt, a visszavezetésnél alkalmazott megfeleltetést, a megoldó algoritmust, az algoritmus
kódolásánál alkalmazott megfeleltetést. Ilyen például a változó átnevezések megadása, annak tisztázása,
hogy a terv 1-től n-ig indexelt tömbje helyett 0-tól n-1-ig indexelt tömböt vagy 0-tól n-ig indexelt
tömböt (ahol a 0-dik elemet nem használjuk) szerepel-e a C++-ban. A dokumentáció része még a tesztelési
esetek listája.
Határidők:
1. beadandó: 2013.04.19. 24:00
A feladatlista Beadandó leadás
Kiegészítő követelmények (a fent olvashatóakon kívül):
Tagolja kódját függvények segítségével. Váljon ketté a függvények deklarációja és definíciója.
Kommentezze a függvényeket a kódban (milyen részfeladatot old meg, melyek a bemenő adatai, kimenő adatai).
Dokumentáció: A dokumentáció tartalmazza a feladat szövegét, specifikációját, a megoldáshoz
felhasznált programozási tételeket és a visszavezetésnél alkalmazott megfeleltetéseket, a megoldó
algoritmust, az alkalmazott függvények kapcsolódási szerkezetét, köztük zajló adatforgalmat
valamint a tesztelési esetek listáját.
2. beadandó: 2013.05.17. 24:00
A feladatlista Beadandó leadás
Kiegészítő követelmények (az eddigieken kívül): A
felhasználói típusokat osztályok definiálásával, több
önálló fordítási egységre való felbontással kell
megvalósítani. Ha a feladat önmagában csak egy típus
megvalósításából áll, akkor célszerű egy olyan menüt
felajánló főprogramot készíteni, amely segítségével
kipróbálható az osztály összes szolgáltatása
(létrehozható több objektum, végrehajthatóak rájuk az
osztály metódusai és barát függvényei).
Dokumentáció:: A dokumentáció tartalmazza a
feladat szövegét, specifikációját, a megoldó
algoritmust, a felhasználói típus(ok)
leírását (típusértékek, műveletek, reprezentáció,
típusműveleteket implementáló algoritmusok), és a
tesztelési esetek listáját.