Schrijf een programma om de taken van een gebruiker te beheren met een
Stack<string>. Omdat een stapel LIFO is (Last In, First Out), werk je altijd
met de laatst toegevoegde taak: die voeg je toe met Push, lees je met Peek
en verwijder je met Pop. Het programma toont een menu, leest een keuze, en
voert de bijhorende bewerking uit, tot je kiest om te stoppen.
Het hoofdprogramma met het menu is al gegeven (zie het beginbestand). Het drukt telkens het menu af, leest je keuze, en roept de juiste procedure op:
1. Voeg taak toe
2. Verwijder laatst toegevoegde taak
3. Toon laatst toegevoegde taak
4. Stop
Jij hoeft enkel de drie procedures in te vullen. Ze werken allemaal op
dezelfde stapel taken:
| Procedure | Wat ze doet | Uitvoer |
|---|---|---|
VoegTaakToe | Leest een taak en plaatst die bovenop de stapel (Push) | Taak toegevoegd. |
VerwijderLaatstToegevoegdeTaak | Verwijdert de bovenste taak (Pop) | Laatst toegevoegde taak '<taak>' verwijderd. of Er zijn geen taken om te verwijderen. |
ToonLaatstToegevoegdeTaak | Toont de bovenste taak zonder ze te verwijderen (Peek) | Laatst toegevoegde taak: <taak> of Geen taken toegevoegd. |
De procedure bij optie 1 heeft een taak nodig. Die lees je met
Console.ReadLine()in de procedure zelf (op de regel na de keuze). Bij optie 2 en 3 controleer je eerst metCountof de stapel niet leeg is, voor jePopofPeekaanroept.
Per bewerking eerst een regel met het cijfer van je keuze. Voor optie 1 volgt op de volgende regel de taak.
Telkens het menu, gevolgd door de uitvoer van de gekozen bewerking.
Invoer:
1
afwas
3
4
Uitvoer:
1. Voeg taak toe
2. Verwijder laatst toegevoegde taak
3. Toon laatst toegevoegde taak
4. Stop
Taak toegevoegd.
1. Voeg taak toe
2. Verwijder laatst toegevoegde taak
3. Toon laatst toegevoegde taak
4. Stop
Laatst toegevoegde taak: afwas
1. Voeg taak toe
2. Verwijder laatst toegevoegde taak
3. Toon laatst toegevoegde taak
4. Stop