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.
Guido's wereld is een tweedimensionaal raster van kruispunten, ook wel hoeken genoemd:
laan-nummer en een straat-nummer (bijv. 1e Laan en 5e Straat is kruispunt 1 5). De linkerbenedenhoek van de wereld is 1e Laan en 1e Straat (1 1).N – Noord (omhoog kijkend / naar hogere straatnummers)O (of E) – Oost (naar rechts kijkend / naar hogere laannummers)Z (of S) – Zuid (omlaag kijkend / naar lagere straatnummers)W – West (naar links kijkend / naar lagere laannummers)
Elke regel in een .wld-bestand specificeert een onderdeel van Guido's wereld.
Robot, Muur / Wall, Piepers / Beepers, Formaat / Size) en windrichtingen (N, O / E, Z / S, W) zijn niet hoofdlettergevoelig.#). Commentaar aan het einde van een regel na een statement wordt ook ondersteund.
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:
<laan> – Het nummer van de beginlaan (positief geheel getal ≥ 1).<straat> – Het nummer van de beginstraat (positief geheel getal ≥ 1).<richting> – De windrichting waarin Guido kijkt (N, O / E, Z / S of W).<piepers> – Het aantal piepers in Guido's piepertas (geheel getal ≥ 0, of -1 voor een oneindige hoeveelheid piepers).Regels:
Robot statement bevatten.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 (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:
<laan> – Het laannummer van het beginkruispunt (geheel getal ≥ 1).<straat> – Het straatnummer van het beginkruispunt (geheel getal ≥ 1).<richting> – Geeft aan welke zijde van het kruispunt geblokkeerd is door de muur:
N – Horizontale muur ten Noorden van het kruispunt (tussen deze straat en de straat erboven).Z (of S) – Horizontale muur ten Zuiden van het kruispunt (tussen deze straat en de straat eronder).O (of E) – Verticale muur ten Oosten van het kruispunt (tussen deze laan en de laan rechts).W – Verticale muur ten Westen van het kruispunt (tussen deze laan en de laan links).<lengte> (optioneel) – De lengte van de muur in blokken (geheel getal ≥ 1). Indien weggelaten, is de standaardlengte 1 blok.Regels voor muurverlenging:
N of Z/S) lopen voor de opgegeven lengte altijd door naar het Oosten.O/E of W) lopen voor de opgegeven lengte altijd door naar het Noorden.Muur 3 7 N 4 is identiek aan Muur 3 8 Z 4 (een horizontale muur van 4 blokken tussen de 7e en 8e Straat, van de 3e tot en met de 6e Laan).Muur 2 4 O 3 is identiek aan Muur 3 4 W 3 (een verticale muur van 3 blokken tussen de 2e en 3e Laan, van de 4e tot en met de 6e Straat).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 (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:
<laan> – Het laannummer van het kruispunt (geheel getal ≥ 1).<straat> – Het straatnummer van het kruispunt (geheel getal ≥ 1).<aantal_piepers> – Het aantal piepers dat op dat kruispunt wordt geplaatst (positief geheel getal ≥ 1).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
| 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). |
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.