Als-dan-blokken#

If Then Blocks

Deze tutorial laat zien hoe je if/else-blokken kunt gebruiken om je robot een voorwaarde te laten controleren en te bepalen welke blokken hij moet uitvoeren. Aan het einde weet je hoe je een voorwaarde instelt en hoe je bepaalt wat er gebeurt als deze waar of onwaar is.

Sleep een Booleaanse blok naar het lege voorwaardevak in de als dan-tak.

Een controller ▲ knop ingedrukt Booleaanse blok wordt naar de lege voorwaardesleuf van een if/else-blok gesleept.

Alle Booleaanse blokken hebben een zeshoekige vorm en een vraagteken in hun naam, zoals het blok controllerknop ingedrukt?.

Een if/else-blok met een controller ▲-knop ingedrukt Booleaanse blok, waarbij het Booleaanse blok is gemarkeerd.

Als de voorwaarde waar is, worden de blokken binnen de als dan-tak uitgevoerd.

Een if/else-blok met een controller ▲-knop ingedrukt, een Booleaanse blok en een drive forward-blok, waarbij het drive forward-blok is gemarkeerd.

Als de voorwaarde onwaar is, worden de codeblokken binnen de else-tak uitgevoerd.

Een if/else-blok met een Booleaanse waarde voor een ingedrukte controllerknop (▲), een blok voor vooruitrijden en een blok voor stoppen met rijden, waarbij het blok voor stoppen met rijden is gemarkeerd.

Een if/else-blok controleert de voorwaarde slechts één keer. Als je wilt dat de voorwaarde herhaaldelijk wordt gecontroleerd, plaats je het if/else-blok in een lus, zoals forever.

Een if/else-blok genesteld in een forever-blok.#
altijd
als <[Controller1 v] [▲ v] ingedrukt?> dan
rijd [vooruit v]
anders
stop rijden
einde
einde

Het if-blok is slechts de als dan-tak. Als de voorwaarde niet waar is, gebeurt er niets.

Het if-blok.#
als <[Controller1 v] [▲ v] ingedrukt?> dan
rijd [vooruit v]
einde

Het if/else if/else-blok kan worden gebruikt om meerdere voorwaarden na elkaar te testen. Het kan worden uitgebreid om zoveel voorwaarden te testen als nodig is.

Een if/else if/else-blok dat drie knoppen van de controller test.#
als <[Controller1 v] [◀ v] ingedrukt?> dan
draai [links v] voor (90) graden ▶
anders als <[Controller1 v] [▶ v] ingedrukt?> dan
draai [rechts v] voor (90) graden ▶
anders als <[Controller1 v] [A v] ingedrukt?> dan
stop rijden
anders
rijd [vooruit v]
einde