Hang Man
Spel
Je hebt een hang man spel, waarvan hier de code:
import random
def hangman():
word_list = ["python", "hangman", "programming", "game", "computer"]
word = random.choice(word_list).lower()
guessed_letters = []
attempts = 8
print("Welkom bij Hangman!")
print("Probeer het woord te raden door letters te kiezen.")
print(f"Je hebt {attempts} pogingen voordat het spel voorbij is.")
while True:
hidden_word = ""
for letter in word:
if letter in guessed_letters:
hidden_word += letter + " "
else:
hidden_word += "_ "
print("\n" + hidden_word)
if "_" not in hidden_word:
print("Gefeliciteerd! Je hebt het woord geraden.")
break
if attempts == 1:
print(f"Helaas, je hebt het woord niet geraden. Het woord was {word}.")
break
guess = input("Kies een letter: ").lower()
if len(guess) != 1 or not guess.isalpha():
print("Ongeldige invoer. Voer één enkele letter in.")
continue
if guess in guessed_letters:
print("Je hebt deze letter al geraden. Probeer het opnieuw.")
continue
guessed_letters.append(guess)
if guess in word:
print("Goed geraden!")
else:
attempts -= 1
print(f"Fout! Je hebt nog {attempts} pogingen over.")
if __name__ == "__main__":
hangman()
Kopieer de code en speel het spel een keer.
Use Cases
Je hebt eigenlijk maar een paar use cases:
- Als speler wil het spel starten omdat ik het spel wil gaan spelen
- Als speler wil een beurt spelen en een letter raden om het woord te raden
- Als speler wil ik het spel stoppen omdat ik het niet wil afmaken
- Als beheerder wil ik de woorden die een speler kan raden veranderen
Bedenk bij alle use cases de stappen die je wilt uitvoeren om het te testen.
Bij use case 2 moet je meerdere zaken testen, denk aan ongeldige invoer, of een letter invoeren die je al hebt geraden, of een hoofdletter invullen van een kleine letter die al is geraden, bedenk verschillende scenario's en beschrijf de stap of stappen.
Bij use case 2 eindigt het spel ook. Het eindigt of omdat je te veel beurten hebt gehad, of omdat je hebt gewonnen en het woord hebt geraden.
Opdracht
Maak een hoofdstukje van elke use case en beschrijf bij elke use case een scenario. Beschrijf de stap of stappen die je moet doorlopen voor het scenario.
Bij use case 2 beschrijf je minimaal 5 scenarios met de bijbehorende stappen.
Als alle stappen zijn beschreven dan voer je alle suit en beschrijf je per proces de bevindingen.
Voorbeeld
...