Vakdidactiek Informatica De Logo TaalwereldTom Beerens AILO Informatica
Tom.Beerens@rug.ac.be
Vakdidactiek Informatica De Logo Taalwereld
Tom Beerens AILO Informatica
Tom.Beerens@rug.ac.be
Ter opfrissing
Leest karakter in van input
Make “jaofnee RC
Inputkarakter in jaofnee
Leest lijst in van input
Make “naam RL
Ingegeven tekst in naam
Leest karakter in van input
Make “jaofnee RC
Inputkarakter in jaofnee
Leest lijst in van input
Make “naam RL
Ingegeven tekst in naam
Telt aantal elementen
Count [Logo [Taal Wereld]] Leest karakter in van input
Make “jaofnee RC
Inputkarakter in jaofnee Read Char
of RC
Read List
of RL
COUNT
Ter opfrissing (2)
Geeft het Xe element weer
Item 3 “Taalwereld
Voegt woorden of karakters
aan elkaar
PR Word “Geachte “, Geeft het Xe element weer
Item 3 “Taalwereld
Voegt woorden of karakters
aan elkaar
PR Word “Geachte “,
Voegt lijsten of woorden samen
PR SE “Hoe [gaat het] Geeft het Xe element weer
Item 3 “Taalwereld
ITEM
WORD
SEntence
Uitbreiding Taalwereld
FIRST
eerste karakter uit een woord, eerste woord uit een lijst
PR FIRST “Taalwereld -> T
LAST
laatste karakter uit een woord, laatste woord uit een lijst
PR LAST [Taal Wereld] -> Wereld
Uitbreiding Taalwereld (2)
BF of ButFirst
alle tekens of woorden behalve het eerste
PR BF “Taalwereld -> aalwereld
BL of ButLast
alle tekens of woorden behalve het laatste
PR BL [Taal Wereld] -> Taal
Uitbreiding Taalwereld (3)
FPUT
plaatst een nieuw element vooraan in de lijst
PR FPUT “taal [wereld] -> [taal wereld]
LPUT
plaatst een nieuw element achteraan in de lijst
PR LPUT “taal [wereld] -> [wereld taal]
EMPTYP
nagaan of een lijst (of woord) leeg is of niet
Korte oefeningen
Procedure die een woord telkens reduceert met 1 karakter.
Vb) Tom -> om -> m
Procedure die een woord omkeert
Vb) Computer -> retupmoC
Procedure die een woord telkens reduceert met 1 karakter.
Vb) Tom -> om -> m
Oplossing korte oefeningen
to erafvoor :woord
if emptyp :woord [stop]
pr :woord
erafvoor bf :woord
end
to erafachter :woord
if emptyp :woord [stop]
pr :woord
erafachter bl :woord
end
Oplossing korte oefeningen (2)
to omkeren :woord
if emptyp :woord [stop]
pr last :woord
omkeren bl :woord
end
OefeningSynoniemen - Tegenstellingen
Doel: Herschrijven van een ingegeven tekst, maar gebruik makend van synoniemen of tegenstellingen
De hond is slim en de kat is triest.
Synoniem -> De hond is intelligent en de kat is droevig.
Tegenstelling -> De hond is dom en de kat is blij. Doel: Herschrijven van een ingegeven tekst, maar gebruik makend van synoniemen of tegenstellingen
Oplossing oefening
to tegenstelling
make "woorden [[...][...]...]
pr [Welke zin moet ik herschrijven?]
make "regel rl
pr zin :regel :woorden
end
to vergelijk :regel :woorden
if emptyp :woorden [op :regel]
if :regel = first first :woorden [op last first :woorden]
ifelse :regel = last first :woorden [op first first :woorden] [op vergelijk :regel bf :woorden]
end
to zin :regel :woorden
if emptyp :regel [op []]
op fput (vergelijk first :regel :woorden)(zin (bf :regel) :woorden)
end
Geheimschrift - Codering
Wat is codering?
Waarvoor gebruikt?
Geheimhouden van belangrijke info, …
ZENDER ONTVANGER Ik ben Tom Beerens Jl cfo Upn Cffsfot
K, tdy Glu Tddfdyx CODEREN Wat is codering?
Simple Substitution Cipher
Doel: Elke letter verwisselen door een andere.
Hoe gaat het? -> Jpr hssy jry?
Hoe aanpakken?
Tekst opsplitsen in aparte woorden
Woorden opsplitsen in aparte karakters
Karakter per karakter coderen Doel: Elke letter verwisselen door een andere.
Hoe gaat het? -> Jpr hssy jry?
Hoe aanpakken?
Oplossing oefening
to codeerletter :letter :code
output codeermatch :letter "abcdefghijklmnopqrstuvwxyz :code
end
to codeermatch :letter :clear :code
if emptyp :clear [output :letter]
if equalp :letter first :clear [output first :code]
output codeermatch :letter butfirst :clear butfirst :code
end
Oplossing oefening (2)
to codeerwoord :woord :code
if emptyp :woord [output "]
output word (codeerletter first :woord :code) ~
(codeerwoord butfirst :word :code)
end
to codeer :tekst :code
if emptyp :tekst [output []]
output sentence (codeerwoord first :tekst :code) ~
(codeer butfirst :tekst :code)
end
Piglatin
Wat is piglatin?
een publiek “geheime” taal vooral populair bij kinderen
Voorbeeld
Wat is logo? -> Wapat ipis lopogopo?
-> atWay isway ogo?lway
Oplossing oefening
to piglatin :tekst
if emptyp :tekst [output []]
output sentence (pigwoord first :tekst)(piglatin butfirst :tekst)
end
to pigwoord :woord
if vowelp first :woord [output word :woord "ay]
output pigwoord word bf :woord first :woord
end
to vowelp :letter
output memberp :letter [A a E e I i O o U u]
end
Comments