Ga naar hoofdinhoud

Stap 1: Eén gok (input en if)

info

Deze stap gebruikt input() en int() uit Tekst naar getal, en if en elif uit If en else en And, or en elif.

De computer denkt aan een getal van 1 tot 100. Jij raadt, en na elke gok zegt hij of het hoger of lager moet. Een spel kan straks zo gaan:

Raad een getal van 1 tot 100: 50
Te hoog.
Raad een getal van 1 tot 100: 25
Te laag.
Raad een getal van 1 tot 100: 37
Te hoog.
Raad een getal van 1 tot 100: 31
Geraden in 4 pogingen.
Eerst op papier

Speel het spel eerst in tweetallen, zonder computer: Raad het getal in tweetallen. Dan weet je welke stappen het programma moet doen.

Dat programma schrijf je zelf, in zes stappen. Je begint met één gok, en een geheim getal dat vaststaat: 37.

Opdracht: te hoog, te laag of geraden​

Schrijf een programma dat:

  1. het geheime getal 37 in een variabele bewaart;
  2. de speler om een gok vraagt met Raad een getal van 1 tot 100: ;
  3. zegt of die gok te hoog is (Te hoog.), te laag (Te laag.) of goed (Geraden.).

Verwachte uitvoer als je 50 typt:

Raad een getal van 1 tot 100: 50
Te hoog.

Probeer daarna ook 20 en 37, zodat je alle drie de antwoorden een keer ziet.

# Schrijf hier je programma
Klik hier voor een tip.

Wat de speler typt, is tekst, en tekst kun je niet met een getal vergelijken. Kijk in Tekst naar getal hoe je er een getal van maakt. Er zijn drie mogelijke antwoorden, dus je hebt drie takken nodig. Vergelijk met je variabele, niet met 37 zelf: in stap 4 kiest de computer het getal, en dan staat er geen 37 meer.

Klik hier voor de oplossing.
geheim = 37
gok = int(input("Raad een getal van 1 tot 100: "))
if gok > geheim:
print("Te hoog.")
elif gok < geheim:
print("Te laag.")
else:
print("Geraden.")

Uitvoer bij 50:

Raad een getal van 1 tot 100: 50
Te hoog.

Er gaat iets mis​

TypeError: '>' not supported between instances of 'str' and 'int'

Oorzaak: je bent int() om de input() vergeten. Dan is gok tekst, en tekst kan Python niet met een getal vergelijken.

Oplossing: maak van de invoer een getal met int().

In de volgende stap bouw je verder op dit programma. Kopieer je programma voordat je verdergaat: de editor bewaart het niet.

Door naar stap 2: blijven raden.