We gaan nu een stapje verder. Vertrek van de oplossing van
Kaartspel eenentwintig
De regels van één speelbeurt blijven dezelfde:
- de bank moet stoppen als ze 17 of meer heeft - ook als ze nog een aas heeft,
- een aas telt voor 11 punten, maar indien de som boven de 21 komt zal een aas voor 1 meetellen, zodat de bank verder kan spelen,
- de bank stopt na 7 kaarten ook al is ze nog niet 'kapot'
Er worden nu echter meerdere speelbeurten geprogrammeerd. Bovendien is de invoer van één speelbeurt is altijd een opsomming van
exact 7 kaarten, dus mogelijks meer kaarten dan nodig. In elke spelbeurt bepaal je ook na de hoeveelste kaart je moet stoppen, en lees je de resterende kaarten correct in, zonder die te verwerken voor die spelbeurt.
Opdracht
Schrijf een programma dat voor een aantal speelbeurten dit spel programmeert voor de bank.
Je mag ervanuit gaan dat er altijd een correcte input wordt gegeven.
Vervolgens toon je per speelbeurt het aantal kaarten dat de bank heeft genomen en de waarde die deze kaarten vertegenwoordigt.
Invoer Dodona
Op de eerste regel staat een positief geheel getal dat het aantal speelbeurten aangeeft.
Per speelbeurt volgen 7 regels met op elke regel de voorstelling van één kaart (getal 7, 8, 9, 10 of letter A, V, B, H).
Merk op dat voor elke speelbeurt de 7 kaarten moeten ingelezen worden, ook al stopt de bank vroeger.
Uitvoer
Per spelbeurt wordt één regel tekst geprint met drie getallen. Het eerste getal is de index van de spelbeurt (de eerste spelbeurt heeft index 1).
Daarna print je twee getallen: het aantal kaarten dat de bank mag aannemen, en de som die deze kaarten vertegenwoordigt. Tussen de drie getallen staat telkens een spatie.
Voorbeeld
Voor 2 spelbeurten:
Invoer:
2
A
V
7
A
7
8
9
A
V
H
7
8
9
10
Uitvoer:
1 3 20
2 5 21