Vakdidactiek Informatica De Logo Taalwereld Tom Beerens [email protected] AILO Informatica Ter opfrissing • Read Char of RC • Read List of RL • COUNT • 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]] Ter opfrissing (2) • ITEM • Geeft het Xe element weer • Item 3 “Taalwereld • WORD • Voegt woorden of karakters aan elkaar • PR Word “Geachte “, • Voegt lijsten of woorden samen • PR SE “Hoe [gaat het] • 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 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 Oefening Synoniemen - 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. 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? ZENDER ONTVANGER CODEREN Ik ben Tom Beerens Jl cfo Upn Cffsfot K, tdy Glu Tddfdyx • Waarvoor gebruikt? Geheimhouden van belangrijke info, … 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 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