Például
Összetettebb alapvetően adatfeldolgozási
feladat dinamikus tárkezeléssel (keresés, beszúrás, törlés, rendezett és/vagy
szűrt listák készítése, tárolás pld. XML-ben, binárisan, text-ben):
könyvtár, könyvesbolt, CD, videotár katalógusa
telefonkönyv, cím adatbázis
akármilyen banki, ügyviteli adathalmaz
feldolgozása (pld. rendelések, szállítások nyilvántartása és lekérdezése)
hallgatói tanulmányi adatok nyilvántartása
időjárás adatok kezelése (napi hőmérséklet, csapadék, szélerősség adatok
rögzítése, statisztika készítése, naponkénti lekérdezés)
határidőnapló (overbooking figyelmeztetés, emlékeztető)
sportverseny adatok kezelése (versenyzőnkénti lekérdezés, átlag, sorrend)
sportesemény-naptár (permutáción alapuló feladatok)
Összetettebb algoritmus
órarend készítés (backtrack)
műveletek nagy mártixokkal (dinamikus memóriakezeléssel)
tetszőleges pontosságú egész aritmetika, kalkulátor
szimuláció (digithez is kapcsolódhat)
gráf bejárása
programozható zsebkalkulátor emuláció
Pool László jegyzetének
végén levő ötletek
Figyelem! A
fentiek csak ötletadó, részben régebbi anyagok. A saját feladatát mindenképpen
egyeztesse a gyakorlatvezetőjével!
·
a
megoldás során szükség van
-
legalább
közepesen bonyolult algoritmikus elemekre
-
dinamikus
memóriakezelésre
-
fájlkezelés
alkalmazására
·
a
forrásprogram terjedelme 500-1000-2000 sor körüli
A feladat értékelése során nagy hangsúlyt
helyezünk a hordozhatóságra. A hordozhatóság legegyszerűbb ellenőrzése, ha a
programot lefordíjuk és futtatjuk Windows és Unix (ural2) operációs rendszer
alatt is.
A szabványos C nyelvben nem valósítható meg
grafikus alkalmazás. Ha valaki mégis ragaszkodik ilyen feladathoz, akkor
először mérlegelni kell, nem oldható-e meg mégis a feladat szabványos
elemekkel. Pédául, ha a program eredményként egy grafikát készít, akkor maga a
program lehet teljesen szabványos, de az eredmény ebben az esetben egy
elterjedt (pld. BMP, TIFF, JPG, WMF) grafikus formátumú bináris fájl, amelynek
a megjelenítése már ismert eszközökkel lehetséges.
Ha valaki interaktív grafikához ragaszkodik,
akkor az így elkészített programnak is minél inkább hordozhatónak kell lennie,
azaz olyan grafikus hátteret kell használni, aminek létezik több operációs
rendszeren is megvalósítása. Ilyen például a wxWindows
vagy az OpenGL. Javasoljuk, hogy ilyen
feladatot csak a programozásban jártasabb hallgatók válasszanak, mert a grafika
kezelése nem része a tananyagnak, így konzultációra is csak korlátozottan van
lehetőség.
-
A
program működésének bemutatása személyesen.
-
Beadandó:
-
dokumentáció
kinyomtatott formában
vagy elektronikusan, ha elterjedt formátumú
(pld. doc,rtf,pdf,
-
a
program forrásai elektronikusan (*.c,*.h)
Az
elektronikusan beadandó részek elküldhetők a gyakorlatvezető címére, de csak
akkor tekinhetők beadottnak, ha a levélre azt nyugtázó válasz érkezik.
Részletesen
le kell írni a feladatot. A megoldás során nem kell feltétlenül
A
dokumentáció ezen része a többi programozónak készül, tehát ennek tartalmaznia
kell az alkalmazott adatszerkezet leírását, a felhasznált algoritmusok vázlatos
ismertetését, a program moduljainak szerkezetét, valamint az egyes függvények
leírását. Ez utóbbi adja meg a függvény funkcióját, a bemeneti paraméterek
jelentését, az esetleges hívási konvenciókat, a visszatérési értéket és annak
értékkészletét, amennyiben ez nem egyértelmű.
A
dokumentáció ezen része a felhasználónak készül, tehát ennek tartalmaznia kell
a program pontos inputját, outputját, valamint a használatához szükséges
ismereteket.
Ebben a
szakaszban a megoldást kell értékelni. Célszerű utalni a hiányosságokra, a
továbbfejlesztési lehetőségekre és az esetleges gyakorlati hasznosításra.
Beadandó a feladat pontos specifikációja
elektronikusan (a dokumentáció 1. fejezete).
Ha valakit nem adja be a feladatát az utolsó
oktatási hét péntek 12.00-ig, akkor a félévét nem ismerjük el. Ha a feladatot
elfogadtuk, az azt jelenti, hogy legalább elégséges (2) osztályzatot kap. A
pontos értékelés a beadást követően történik, de legkésőbb a vizsgaidőszak első
napjáig befejeződik.