De Roger Frank Lessen
Introductie in de informatica: GvR

Guido van Robot Wereld Referentiegids

Een Guido van Robot wereldbestand (met de extensie .wld) definieert de omgeving waarin Guido leeft en beweegt. Het specificeert de indeling van straten en lanen, de buiten- en binnenmuren, de plaatsing van piepers, en Guido's beginpositie, kijkrichting en het aantal piepers in zijn piepertas.

Coördinatensysteem van de wereld

Guido's wereld is een tweedimensionaal raster van kruispunten, ook wel hoeken genoemd:

Algemene syntaxregels

Elke regel in een .wld-bestand specificeert een onderdeel van Guido's wereld.

Het Robot Statement

Het Robot statement positioneert Guido in de wereld, geeft de richting aan waarin hij kijkt, en bepaalt het aantal piepers waarmee hij in zijn piepertas begint.

Robot <laan> <straat> <richting> <piepers>

Parameters:

Regels:

Voorbeelden:

Robot 1 1 O 0    # Guido start op 1e Laan & 1e Straat, kijkend naar het Oosten, met 0 piepers
Robot 4 3 N 0    # Guido start op 4e Laan & 3e Straat, kijkend naar het Noorden, met 0 piepers
Robot 1 5 O 4    # Guido start op 1e Laan & 5e Straat, kijkend naar het Oosten, met 4 piepers
Robot 1 2 N -1   # Guido start op 1e Laan & 2e Straat, kijkend naar het Noorden, met oneindig veel piepers

Het Muur (Wall) Statement

Het Muur (of Wall) statement plaatst binnenmuren die Guido's pad blokkeren. Als Guido tegen een muur probeert te lopen, stopt het programma met een foutmelding (uitschakeling).

Muur <laan> <straat> <richting> [<lengte>]

Parameters:

Regels voor muurverlenging:

Voorbeelden:

Muur 2 4 N       # Horizontale muur van 1 blok ten noorden van kruispunt (2, 4)
Muur 2 4 O       # Verticale muur van 1 blok ten oosten van kruispunt (2, 4)
Muur 4 4 N 2     # Horizontale muur van 2 blokken ten noorden van 4e Straat, beginnend bij 4e Laan en doorlopend naar het Oosten
Muur 7 3 O 6     # Verticale muur van 6 blokken ten oosten van 7e Laan, beginnend bij 3e Straat en doorlopend naar het Noorden

Het Piepers (Beepers) Statement

Het Piepers (of Beepers) statement plaatst een of meer piepers op een specifiek kruispunt in de wereld, die Guido kan oppakken tijdens de uitvoering.

Piepers <laan> <straat> <aantal_piepers>

Parameters:

Voorbeelden:

Piepers 4 4 1    # Plaatst 1 pieper op het kruispunt van de 4e Laan en de 4e Straat
Piepers 2 5 3    # Plaatst 3 piepers op het kruispunt van de 2e Laan en de 5e Straat

Overzicht van statements in het wereldbestand


Statement Syntax Omschrijving
Robot Robot <laan> <str> <richting> <piepers> Bepaalt Guido's beginkruispunt, kijkrichting (N, Z/S, O/E, W) en piepers in de tas. (Verplicht, precies één)
Muur / Wall Muur <laan> <str> <richting> [<lengte>] Plaatst een muur met lengte ≥ 1 (standaard 1) die beweging in richting richting blokkeert. Verlengt naar het Oosten (horizontaal) of Noorden (verticaal).
Piepers / Beepers Piepers <laan> <str> <aantal> Plaatst aantal piepers op kruispunt (laan, str).

Compleet voorbeeld van een wereldbestand


Hier is een compleet voorbeeld van een werelddefinitiebestand (doolhof.wld):
# ==========================================
# Guido van Robot Voorbeeld Wereld
# ==========================================

# Plaats Guido op 1e Laan en 5e Straat, kijkend naar het Oosten met 1 pieper
Robot 1 5 O 1

# Plaats piepers op kruispunten
Piepers 3 5 1

# Definieer doolhofmuren
Muur 2 4 N
Muur 2 4 O
Muur 3 4 O
Muur 4 4 N 2
Muur 2 5 N
Muur 2 6 O
Muur 3 6 O
Muur 4 5 N 2

Programma referentie | Index | Les 1

Copyright © 2026 Stas Zytkiewicz, Jeffrey Elkner, Roger Frank.