Liesbeth Van Raemdonck Haiku-generator Liesbeth Van Raemdonck
Overzicht les Herhaling commando’s Definitie Haiku Haiku-generator Oefening op generator
Overzicht Instructies [lijst] , item , sentence count random output
Lijsten Tussen [ ] geschreven voorbeeld: Make “voorbeeldje [dit is een lijst] show :voorbeeldje resultaat: [dit is een lijst]
Item Om een element te selecteren uit een: Voorbeeld: lijst woord array Voorbeeld: pr ITEM 2 [ [rood en groen] zijn kleuren] resultaat: zijn
Sentence Om woorden, lijsten of een combinatie van beide samen te voegen. Afkorting “se” Voorbeeld: pr (se “blub “zei [ de vis ] ) resultaat: blub zei de vis
count Telt de letters van een woord of de elementen van een lijst. Voorbeeld: pr count [ blub zei [ de vis ] ] resultaat: 3
Random RANDOM getal Voorbeeld: geeft een willekeurig positief getal terug kleiner dan getal. Voorbeeld: pr random 5 mogelijk resultaat: 3
Output Afkorting: OP Voorbeeld: Toepassen: to outputvoorbeeld OP [Dit is de output] end Toepassen: show outputvoorbeeld resultaat: [Dit is de output]
Definitie Haiku Een Haiku is een gedichtje dat bestaat uit 17 lettergrepen, verdeeld over 3 versen. De lettergrepen worden meestal verdeeld als volgt: 5-7-5 Voorbeeld: Glass balls and glowing lights. Dead tree in living room. Killed to honor birth.
Haiku-generator We willen de computer haiku-gedichtjes laten schrijven. (moeten niet precies 17 lettergrepen hebben) Hoe? We maken lijsten aan met woorden. Uit elke lijst kiest hij willekeurig een woord. Tussen deze woorden zetten we nog kleine woordjes.
Procedure KIES Deze procedure geeft als output een willekeurig woord van de lijst. to KIES :lijst .. end
Procedure KIES to KIES :lijst OP ITEM (1 + (RANDOM COUNT :lijst)) :lijst end
Procedure HAIKU to HAIKU end MAKE “A [ochtend … nacht] … MAKE “G [open … toe] Jullie! end
Procedure HAIKU to HAIKU end Maak de lijsten aan… PR (SE "De KIES :A KIES :B) PR (SE "en "in "de KIES :C) PR (SE KIES :D "een KIES :E “de KIES :F KIES :G) PR “ end
Extra oefening Laat de procedure HAIKU meerdere haiku’s maken. Geef daarvoor als parameter mee hoeveel gedichtjes hij moet maken.
Extra oefening to HAIKU :aantal end if :aantal < 1 [stop] … wait 30