Drop hier links of afbeeldingen om ze aan de editor toe te voegen.

Klasse Kassabon

Inleiding

Je bouwt een digitale kassabon zoals die van een supermarkt. De Kassabon-klasse slaat artikelen en hun prijzen op in twee parallelle lijsten (List<string> en List<int>). Een read-only computed property berekent automatisch het totaal. Ongeldige prijzen worden geweigerd via validatie. Dit combineert OOP, collections, lussen en string-operaties.

Opdracht

Schrijf de klasse Kassabon volledig vanuit het niets. De Main-methode is al ingevuld.

Properties:

Private velden:

Constructor: Kassabon(string winkelNaam)

Methoden:

  1. ToevoegenArtikel(string artikel, int prijs):
    • Voegt het artikel en de prijs toe aan de lijsten alleen als prijs > 0
    • Anders: druk af Ongeldige prijs voor [artikel]: prijs moet groter zijn dan 0.
  2. ToonBon():
    • Druk de koptekst af: === Kassabon [WinkelNaam] ===
    • Als de bon leeg is: druk af (geen artikelen)
    • Anders: druk elk artikel af als [artikel]: [prijs] euro
    • Druk altijd af: Totaal: [Totaal] euro
  3. Reset():
    • Leegt beide lijsten
    • Drukt af: Kassabon gewist.

De Main-methode is al ingevuld en mag je niet aanpassen.

Verwachte uitvoer

=== Kassabon Colruyt ===
Melk: 2 euro
Brood: 3 euro
Kaas: 5 euro
Totaal: 10 euro
Ongeldige prijs voor Gratis item: prijs moet groter zijn dan 0.
=== Kassabon Colruyt ===
Melk: 2 euro
Brood: 3 euro
Kaas: 5 euro
Appels: 4 euro
Totaal: 14 euro
Aantal artikelen: 4
Kassabon gewist.
=== Kassabon Colruyt ===
(geen artikelen)
Totaal: 0 euro

Puntenverdeling

Puntenverdeling Te behalen punten
Properties + constructor 2
Read-only property Totaal 2
Methode ToevoegenArtikel() + validatie 2
Methode ToonBon() correct 3
Methode Reset() + correcte uitvoer 1
Totaal 10