Onthouden wat er gebeurt

Programmeergidsen

De toestand van een programma is de informatie die beschrijft wat er op dit moment gebeurt. In een spel kunnen dat de score, de overgebleven levens en de stand van een deur zijn.

De toestand verandert wanneer er iets gebeurt. Een munt pakken verandert een totaal. Op een knop drukken kan een menukeuze veranderen. Met een variabele onthoudt een programma zo’n waarde tussen opdrachten.

Onthoud een bordspel

Als je een bordspel even pauzeert, moet je onthouden wie aan de beurt is en waar de stukken staan. Die gegevens beschrijven de huidige toestand. Zonder die informatie zou je opnieuw moeten beginnen.

Een computerspel heeft hetzelfde probleem. Een deur tekenen onthoudt nog niet of de speler erdoor mag. We kunnen die informatie bewaren in een booleaanse waarde: een waarde die waar of onwaar is.

Een deur en een sleutel

# taal: nl
laat heeftSleutel = onwaar
laat deurOpen = onwaar
zet heeftSleutel = waar
als heeftSleutel:
    zet deurOpen = waar
als deurOpen:
    zeg "Je mag naar binnen."
anders:
    zeg "De deur is dicht."

Dit kleine voorbeeld stelt het oppakken van de sleutel voor met zet heeftSleutel = waar. Het toont het resultaat als tekst in plaats van een spel te tekenen. heeftSleutel en deurOpen zijn aparte stukjes toestand. Een sleutel hebben en een deur openen zijn verschillende gebeurtenissen.

Voorspel en probeer

Welk bericht moet verschijnen?

Je mag naar binnen.

Stel je nu voor dat je de regel weghaalt die je de sleutel geeft. De beginwaarde blijft dan onwaar en de deur blijft dicht.

Jouw uitdaging

Voeg een variabele levens toe die bij drie begint. Stel het verliezen van een leven voor door er één af te trekken. Toon hoeveel levens overblijven. Houd de toestand van de deur apart van het aantal levens.

Een veelgemaakte fout

Met laat binnen een herhaald blok opnieuw een score maken kan die elke ronde terugzetten. Maak een blijvende score vóór de lus en werk die bij met zet. Gewone uitvoerwaarden zijn ook geen permanent opgeslagen gegevens. Een nieuwe uitvoering begint bij de beginwaarden, tenzij je bewust opgeslagen informatie laadt.

Verder leren

Een programma volgen · Spelschermen · Gegevens bewaren