Je schrijft een Spaarpot-klasse die bijhoudt hoeveel iemand gespaard heeft richting een doel. De klasse heeft validatielogica: je kan niet meer storten dan het doelbedrag en niet meer opnemen dan er in zit.
Schrijf de klasse Spaarpot volledig vanuit het niets. De Main-methode is al ingevuld.
Eigenschappen:
Naam (type string)Doel (type string, beschrijving van wat je wil kopen)DoelBedrag (type int)Saldo (type int, begint op 0, private set)Constructor: Spaarpot(string naam, string doel, int doelBedrag)
Methoden:
Storten(int bedrag):
Saldo + bedrag <= DoelBedrag: verhoog Saldo met bedrag (geen melding)Saldo enkel met het resterende bedrag (DoelBedrag - Saldo), en druk af:
Doel bijna bereikt! Er wordt slechts [resterend] euro bijgevoegd.Opnemen(int bedrag) — geeft bool terug:
bedrag <= Saldo: verlaag Saldo met bedrag, geeft truefalseVoortgang() — geeft int terug: Saldo * 100 / DoelBedragIsVol() — geeft bool terug: Saldo == DoelBedragToonInfo():
Spaarpot: [Naam]
Doel: [Doel]
Gespaard: [Saldo] / [DoelBedrag] euro ([Voortgang()]%)
Spaarpot: Ahmed
Doel: Nieuwe fiets
Gespaard: 0 / 500 euro (0%)
Spaarpot: Ahmed
Doel: Nieuwe fiets
Gespaard: 350 / 500 euro (70%)
Doel bijna bereikt! Er wordt slechts 150 euro bijgevoegd.
Spaarpot: Ahmed
Doel: Nieuwe fiets
Gespaard: 500 / 500 euro (100%)
Opname van 50: geslaagd
Spaarpot: Ahmed
Doel: Nieuwe fiets
Gespaard: 450 / 500 euro (90%)
Spaarpot vol: nee
| Puntenverdeling | Te behalen punten |
|---|---|
| Eigenschappen + constructor | 1 |
| Private set op Saldo | 1 |
| Methode Storten() met validatie | 3 |
| Methode Opnemen() correct | 2 |
| Methoden Voortgang() en IsVol() | 1 |
| Methode ToonInfo() correct | 1 |
| Correcte uitvoer | 1 |
| Totaal | 10 |