Dostala jsem ve škole úkol - je to z předmětu DATOVÉ STRUKTURY. Naprogramovat to máme v DELPHI - problém je, že já vůbec nevím, jak začít... Nepředpokládám, že by mi to zde někdo vypracoval, ale chtěla bych poprosit o podrobný návod, co udělat... Děkuju moc:)
A) Implementujte abstraktní datovou strukturu (ADS) ABSTRSINGLELIST, Seznam:
jednosměrně cyklicky zřetězený lineární seznam s hlavou v dynamické paměti,
která disponuje následujícími povinnými operacemi:
- Vytvoř: vytvoření prázdného seznamu (alokace),
- Zruš: zrušení celého seznamu (dealokace),
- JePrázdný: test naplněnosti seznamu,
- ZpřístupniPrvní: zpřístupnění prvního prvku seznamu,
- VložPrvní: vložení prvku do seznamu na první místo,
- OdeberPrvní: odebrání prvního prvku ze seznamu,
- Prohlídka: provede prohlídku seznamu, přičemž na každém jeho
prvku vykoná operaci Akce,
- ZpřístupniNásledníka: zpřístupnění následníka aktuálního prvku,
- VložNásledníka: vložení prvku do seznamu jakožto následníka
aktuálního prvku,
- OdeberNásledníka: odebrání následníka aktuálního prvku ze seznamu,
- Akce: provede později definovaný úkon nad prvkem seznamu.
Pozn.: Operace typu Vlož, resp. Odeber nechť neprovádějí alokaci, resp. dealokaci
prvku, na který se vztahují.
B) S využitím ADS ABSTRSINGLELIST vybudujte ABSTRDOUBLELIST abstraktní
datovou strukturu Seznam: obousměrně cyklicky zřetězený lineární seznam s hlavou v
dynamické paměti, jež je povinně doplněna o analogické operace pro práci
s předchůdcem aktuálního prvku.
C) V rámci správy a údržby firemních serverů provádí jejich správce periodické servisní
kontroly (obr 3), přičemž jeho pohyb po budově má vždy liniový charakter. V budově se
pak mohou vyskytovat dva typy serverů, private a public. Druhý zmiňovaný se kromě
firemních účelů využívá především pro komerční webhosting. Pro testování vytvořte
program ProgSprávce pracující s typem dat:
- správce jež je reprezentován hlavou a disponuje informacemi jméno a počet serverů,
- server který může být:
--private s informacemi o názvu serveru a typu OS,
--public s informacemi o názvu serveru, typu OS a počtu hostujícíchprezentací.
Pozn.: Testovací aplikace ProgSprávce musí implementovat separátní modul/y
obsahující ADS.
Pomocí ADS obousměrný cyklický zřetězený lineární seznam s hlavou v dynamické
paměti implementujete výše popsaný problém.
Program ProgSprávce nechť umožňuje zadávání vstupních dat z klávesnice, ze
souboru a z generátoru, výstupy z programu nechť je možné zobrazit na obrazovce a uložit
do souboru.
Pozn.: Operaci Akce pro výpis obsahu položek relevantních prvků na obrazovku,
resp. do souboru implementujte jako přetíženou funkci.
Úkol musí vyhovovat následujícím požadavkům:
a) implementačním nástrojem je programovací jazyk Pascal/Delphi,
b) povinně jsou využívány principy objektově orientovaného programování (OOP),
c) v rámci Pascalovských knihoven - unitů, které zapouzdřují abstraktní datové struktury,
nelze používat globální proměnné,
d) implementace operací abstraktních datových struktur nesmí obsahovat vstupně/výstupní
Pascalovské procedury a funkce – (např. read, write apod.),
e) doporučuje se používání pokud možno samovysvětlujících identifikátorů (modulů, typů,
proměnných, procedur a funkcí),
f) zdrojový text semestrální práce musí být stručně komentovaný, přičemž komentáře jsou
zejména zaměřeny na vysvětlení jeho složitějších částí,
g) hlavní programový modul pracuje v interaktivním režimu nabízejícím uživateli menu,
z něhož je možné si vybrat následující základní vstupně/výstupní operace:
• zadání vstupních dat z klávesnice,
• generování požadovaného množství vstupních dat generátorem s jejich následným
vkládáním do datových struktur programového systému,
• naplnění datových struktur programového systému daty uloženými v souboru,
• výpis dat obsažených v datových strukturách programového produktu jak na
obrazovku, tak do souboru;
kromě uvedených operací nabízí menu navíc k výběru možnosti, které jsou
specifikované v zadání semestrální práce,
h) je vyhotovena stručná písemná dokumentace k semestrální práci (v papírové podobě)
obsahující:
• grafické znázornění použitých datových struktur a jejich vzájemných vazeb,
• grafické znázornění modelu tříd objektů pomocí modelovacího jazyka UML
Při hodnocení úkolu se zohledňuje:
a) kvalita návrhu datových struktur,
b) kvalita implementace (paměťová a výpočetní náročnost, dodržování principů OOP,
modulární stavba programového produktu, přehlednost zdrojového textu - vhodná volba
identifikátorů, členění do funkčních bloků, znuvupoužitelnost a používání abstraktních
datových struktur při návrhu cílové stavby programového produktu),
c) kvalita dokumentace.
Fórum › Delphi
Příklad na datové struktury v Delphi...


Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×






























































Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 35 hostů
Podobná vlákna
Dynamické datové struktury — založil Petr Dočkal
Dynamické datové struktury — založil Boi
Dinamické datové struktury v borlend pascal 7.0 — založil Edison
Datove typy — založil repu
Datové typy — založil Martin