Debuggen en je raad-het-getalspel uitbreiden

Op deze pagina, ga je een Raad-het-getalspel debuggen en je gaat de computer laten zeggen of de getallen bij het raden te groot of te klein zijn.

  1. Analyseer en debug. Het Raad-het-getal-spelblok hieronder bevat een bug: een error/fout in de code dat het programma anders doet gedragen dan je wilt. Deze code, als je het heel vaak uitvoert, zal in de meeste gevallen wel werken, maar soms (niet altijd) zal het je feliciteren voordat je het getal geraden hebt.
    Als je dit nabouwt om te testen, zorg dat het willekeurige nummers selecteert tussen 1 en 3 om de bug vaker voor te laten komen.
    Geen Afbeelding
    Geen Afbeelding Analyseer de code, of experimenteer ermee en leg uit hoe dit kan gebeuren.
    Als een nieuw potje gestart wordt zal antwoord nog steeds de waarde hebben van de vorige keer. Als dan toevallig geheim getal dezelfde waarde heeft als het vorige potje, dan is de voorwaarde van het herhaal totblok al waar. De speler krijgt dus nooit de kans om het getal te raden.

    Om dit probleem op te lossen moet je zorgen dat het antwoord van het vorige potje niet meer gebruikt wordt.

  2. Open je H2L1-RaadHetGetal=project, als je dat nog niet gedaan had.
  3. Er zijn een paar verschillende manieren om de bug te fixen.
    Je kan een tweede script-variabele gebruikt om het antwoord in op te slaan en te controleren.
    Als je meer script-variabelen toe wilt voegen, gebruikt de rechter driehoek. (De linker driehoek zal ze verwijderen.)
    Geen Afbeelding

    Debug-Tip: weergeven van variabelen

    Wanneer je je code aan het debuggen bent, kan het helpen om de waarde van je variabelen op verschillende momenten in je programma te bekijken. Dit kun je op verschillende manieren doen:

    • Je kunt klikken op het variabele blok (zoals Geen Afbeelding) om de huidige waarde te zien.
    • Als het een globale variabele is, kun je deze markeren met de check-box ernaast in het palet (Geen Afbeelding) dan verschijnen de naam en de waarde van de variabele op het speelveld. (Dit werkt soms ook voor andere soorten data die geen variabelen zijn, zoals te zien in de video hieronder.)
    • Als het een lokale (script)variabele is, kun je het toon variabeleblok gebruiken dan verschijnen ook de naam en waarde van de variabele op het speelveld. (je kan dan weer het verberg variabeleblok gebruiken om de naam en waarde weer te verbergen). Dit is te zien in het filmpje hieronder.

    Geen Afbeelding
  4. Test en debug je code.

Breid het programma uit met meer specifieke reacties

  1. Gebruik meer blokken met voorwaardes en predikaten om de computer te laten zeggen of het geraden getal te groot of te klein is: "Dat is te groot. Probeer het nog eens."
    Geen Afbeelding Waar in de code horen deze voorwaardes?
  2. Test en debug. Speel het spel net zo lang totdat je zeker weet dat alles het doet, en de manier waarop jij wilt dat het spel het doet. Het zou moeten:
    • vragen aan de speler om het geheime getal te raden;
    • zeggen of het geraden getal fout is, of het te groot of te klein is en daarna nog eens vragen te raden;
    • feliciteren wanneer de speler het juiste getal heeft geraden.

Script-variabelen bestaan alleen terwijl het script wordt uitgevoerd, dus het geheime getalvariabele zal niet bestaan nadat Raad-het-getal afgelopen is. Als het weer opnieuw wordt uitgevoerd, zal het programma een nieuwe geheime getalvariabele maken en initialiseren als een willekeurig getal.

Geen Afbeelding

In een later hoofdstuk, ga je leren hoe de computer een geheim getal kan raden dat jij hebt gekozen.

  1. Op dit moment, kiest het script altijd een nummer tussen de 1 en 10, waarbij 10 dus het maximale getal is. Vraag de speler aan het begin van het spel wat het maximale getal zal zijn en verander vervolgens je programma zodat het een getal kiest tussen 1 en maximum.
 
  1. Gebruik een andere script-variabele om bij te houden hoe vaak de speler al heeft geprobeerd het getal te raden, voordat hij/zij het juiste antwoord had. Wanneer de speler juiste antwoord vindt, zeg dan hoeveel pogingen hij/zij nodig had.
  2. Vind een manier om de tekst een beetje aan te passen, zodat het programma niet constant hetzelfde zegt in dezelfde situatie. Bijvoorbeeld, als een speler twee keer achter elkaar te hoog raadt, kan het programma zeggen: "Dat is nog steeds te hoog. Probeer een ander getal." Of als de speler meer dan 10 pogingen nodig had om het juiste antwoord te vinden: "Je had meer dan 10 pogingen nodig, dat kan beter!".
TerugVolgende