Warning
This page is located in archive.

Implementační test 29.1.2020

Napište program, který implementuje frontu pomocí jednosměrného spojového seznamu (nebo alternativně dynamicky alokovaného pole). Uzly seznamu obsahují datovou položku typu textový řetězec, který je alokován v dynamické paměti a zabírá právě tolik místa, kolik je třeba.

Program zpracovává soubor na standardním vstupu v následujícím tvaru:

create 10          → vytvoří frontu o velikosti 10 textových řetězců
put ahoj           → vloží do fronty, pokud je ve frontě místo
put svete          → vloží do fronty, pokud je ve frontě místo
put jak            → vloží do fronty, pokud je ve frontě místo
put se             → vloží do fronty, pokud je ve frontě místo
get                → pokud je ve frontě nějaký prvek, odebere prvek z fronty a vytiskne ho
get                → pokud je ve frontě nějaký prvek, odebere prvek z fronty a vytiskne ho
print              → tiskne obsah fronty
delete             → smaže frontu

Příklad volání:

$ ./a.out < data.txt
= created queue of size 10
> ahoj
> svete
> jak 
> se
< ahoj
< svete
= jak se
= queue deleted

Kritéria hodnocení

  • obecná funkcionalita
    • návrh vhodné struktury +2b
    • hlídání mezí +1b
    • zpracování textového souboru +2b
  • funkce fronty
    • vytvoření +2b
    • vložení +2b
    • výběr +2b
    • tisk +2b
    • smazání +2b

Kritéria a navržené hodnocení jsou pouze orientační. Hodnotí se také celková strategie řešení problému.

courses/b0b99prpa/implementace.txt · Last modified: 2020/01/29 09:27 by viteks