VandaagWat zijn woorden en zinnen in LOGO ?
In- en uitvoercommando’s
Manipuleren van woorden en lijsten
Gebruiken van bestanden in LOGO
Chris Pollentier
Chris_Pollentier@hotmail.com 18 / 12 / 2002 De LOGO taalwereld
Vandaag
Wat zijn woorden en zinnen in LOGO ?
In- en uitvoercommando’s
Manipuleren van woorden en lijsten
Gebruiken van bestanden in LOGO
Woorden en zinnen
Definitie
Een woord is een aaneenschakeling van symbolen.
Voorbeelden:
‘HALLO’, ‘STOEL’, ‘broek’, ‘2drfw’
Een lijst is een reeks van 0 of meer elementen. De elementen kunnen zowel woorden als andere lijsten zijn. Lijsten worden genoteerd tussen ‘[’ en ‘]’
Voorbeelden:
[dit is een lijst [dit is een lijst in een lijst] ]
[]
Weergeven van woorden en lijsten
PRINT (PR) – Toont een woord of een lijst en eindigt met een newline karakter
SHOW – Toont een woord of een lijst, net als PR, maar toont lijsten tussen ‘[’ en ‘]’
TYPE – Toont een woord of een lijst, net zoals PR, maar eindigt niet met een newline karakter.
Weergeven van woorden en lijsten
Voorbeelden
PR [Hallo Jos]
Hallo Jos
SHOW [Hallo Jos]
[Hallo Jos]
PR “Tot
Tot
PR “Tot “Ziens
fout (waarom ?)
PR [[Tot vanavond] [Pol]]
[Tot vanavond] [Pol]
Weergeven van woorden en lijsten
PR ““Logo
“Logo
PR [“Hallo “Jos]
“Hallo “Jos
PR “
Manipuleren van woorden en lijsten
FIRST: Geeft het eerste element van een lijst of het eerste teken van een woord
LAST: Geeft het laatste element van een lijst of het laatste teken van een woord
BUTFIRST: Geeft alle tekens van een woord of alle woorden van een lijst behalve het eerste
BUTLAST: Geeft alle tekens van een woord of alle woorden van een lijst behalve het laatste
Manipuleren van woorden en lijsten
WORD: Voegt twee of meer woorden samen in een nieuw woord
LIST: Voegt twee of meer woorden of lijsten samen in een nieuwe lijst
LPUT (LastPut): Voegt een element toe achteraan in een lijst .
FPUT (FirstPut): Voegt een element toe vooraan in een lijst.
SE (Sentence): Verbindt woorden of lijsten of een combinatie van beiden met elkaar
Manipuleren van woorden en lijsten
Remove: verwijdert elk voorkomen van een element in een lijst.
Manipuleren van woorden en lijsten
Voorbeelden
SHOW FIRST [eerste tweede derde]
eerste
SHOW FIRST “Eerst
E
SHOW LAST [eerste tweede derde]
Derde
SHOW LAST “Eerst
t
Manipuleren van woorden en lijsten
SHOW BUTFIRST [eerste tweede derde]
[tweede derde]
SHOW BUTFIRST “Hallo
Allo
SHOW BUTLAST [eerste tweede derde]
[eerste tweede]
SHOW BUTLAST “Hallo
Hall
Manipuleren van woorden en lijsten
SHOW WORD “Hallo “Jos
HalloJos
SHOW (WORD “Hallo “Jos “ke) haakjes !
HalloJoske
SHOW LIST [Hallo] [Jos]
[[Hallo] [Jos]]
SHOW LIST “Hallo “Jos
[Hallo Jos]
SHOW ( LIST [Hallo Jos] [Hoe ] “gaat “het [])
[[Hallo Jos] [Hoe] gaat het []]
Manipuleren van woorden en lijsten
SHOW SE [Dit zijn twee] [verschillende lijsten]
[Dit zijn twee verschillende lijsten]
SHOW SE [Een lijst en een] “woord
[Een lijst en een woord]
SHOW (SE [Een lijst, een] “woord [en nog een ] “woord)
[Een lijst, een woord en nog een woord]
Wat is het verschil tussen SE en LIST ?
Manipuleren van woorden en lijsten
SHOW REMOVE “is [Dit is een lijst]
[Dit een lijst]
SHOW REMOVE [is] [Dit is een lijst]
[Dit is een lijst]
SHOW REMOVE [sublijst] [[Dit is een sublijst] ]
[[Dit is een sublijst]]
SHOW REMOVE [sublijst] [Dit is een [sublijst] ]
[Dit is een]
Manipuleren van woorden en lijsten
Volgende commando’s geven informatie over een lijst of woord
COUNT: telt het aantal woorden in een lijst of het aantal symbolen in een woord
SHOW COUNT “Hallo
5
SHOW COUNT [Hallo]
1
Manipuleren van woorden en lijsten
ITEM geeft een bepaald item uit een lijst terug
SHOW ITEM 1 [dag boek]
dag
SHOW ITEM 1 [[dag] [boek]]
[dag]
SHOW ITEM 5 “Hallo
o
SHOW ITEM 6 “Hallo
Oefening
Schrijf een procedure “Eraf” met één argument. Dit argument kan zowel een woord als een lijst zijn. De uitvoer van het programma is als volgt:
Eraf “Computer Eraf [dit is een voorbeeld van een lijst]
Computer dit is een voorbeeld van een lijst
Compute dit is een voorbeeld van een
Comput dit is een voorbeeld van
… …
C dit
Pas de procedure aan zodat de uitvoer het volgende wordt:
Eraf2 “Computer Eraf2[dit is een voorbeeld van een lijst]
Computer dit is een voorbeeld van een lijst
ompute is een voorbeeld van een
mput een voorbeeld van
pu voorbeeld
Testopdrachten
Testopdrachten zijn opdrachten die true (waar) of false (vals) teruggeven.
Testopdrachten kunnen gebruikt worden als voorwaarden:
if(else) [pr “true] [pr “false]
Voorbeelden
EMPTYP: Is een woord of een lijst leeg?
SHOW EMPTYP [] true
SHOW EMPTYP [een] false
SHOW EMPTYP BUTFIRST [een] true
Testopdrachten
NUMBERP is het argument een nummer
SHOW NUMBERP “1
True
SHOW NUMBERP :a
?
SHOW NUMBERP “a
false
LISTP: Is het argument een lijst ?
SHOW LISTP [] true
SHOW LISTP :a ?
Testopdrachten
NAMEP: Is een variabele al in het programma gedefinieerd
SHOW NAMEP “op make “op ??
WORDP: Is het argument een woord ?
SHOW WORDP “op true
SHOW WORDP [op] false
MEMBERP: Is het eerste argument een element van het tweede element
SHOW MEMBERP “a “hallo
true
SHOW MEMBERP [a] [hallo]
false
SHOW MEMBERP “b “hallo
false
Comments