Drop links or images here to add them to the editor.

Yahtzee is een populair dobbelspel dat elementen van strategie en geluk combineert. Het spel wordt normaal gespeeld met vijf dobbelstenen en het doel is om de meeste punten te scoren door specifieke combinaties te gooien.

Een kleine straat wordt gedefinieerd als op een opeenvolgende reeks getallen (ogen) waarbij het aantal opeenvolgende dobbelstenen minstens even lang is als het aantal dobbelstenen – 1. Dus bijvoorbeeld, indien er n dobbelstenen zijn, moeten er n-1 (of meer) oplopende stenen zijn.

Opdracht

Om de logica, ter controle van een kleine straat, uit te werken is het gemakkelijk om eerst van de gegooide ogen een unieke en gesorteerde lijst te maken, dus dubbele ogen verwijderen en de lijst numerisch oplopend ordenen. Schrijf daarom eerst de functie “maak_uniek_en_sorteer” die als parameter een lijst krijgt met alle geworpen ogen vb. de lijst “stenen_list” die integers bevat (aantal ogen). De functie geeft een lijst terug met enkel unieke ogen, oplopend gesorteerd.

Schrijf vervolgens de functie “is_kleine_straat” die dezelfde parameter als de vorige functie als input krijgt, dus een lijst met de origineel geworpen ogen (integers), en die, gebruikmakend van de vorige functie, bepaalt of de stenen een kleine straat voorstellen, dus indien er N dobbelstenen zijn moeten er N-1 (of meer) oplopende dobbelstenen zijn. Let op: Een grote straat (allemaal oplopend) is dus ook een kleine straat. Zorg ook dat de functie correct werkt als er meer dan 5 dobbelstenen geworpen worden en als een dobbelsteen met meer of minder kanten wordt gebruikt (te zien aan het hoogst geworpen aantal ogen). Deze functie geeft een boolean terug (True of False).

Schrijf ook een hoofdprogramma dat aan de gebruiker de geworpen ogen vraagt (op 1 lijn ingegeven, gescheiden door spaties) en maak gebruik van de functies om tot het juiste resultaat te komen.

Invoer
Geef het aantal ogen in van de geworpen dobbelstenen (gescheiden door een spatie): 5 2 3 4 6
Uitvoer
5 2 3 4 6 -> Dit is een kleine straat
Invoer
Geef het aantal ogen in van de geworpen dobbelstenen (gescheiden door een spatie): 6 2 3 4 6
Uitvoer
6 2 3 4 6 -> Dit is geen kleine straat