Skip to content

Activitat

Generador de poesia

Intermedi | MakeCode, Python | Acceleròmetre, Pantalla LED | Aleatorització, Gramàtica, Poesia

Pas 1: Crea-ho

En què consisteix?

El projecte generador de poesia crea frases aleatòries que pots utilitzar en un poema, com a contrasenya o per començar una història. És agradable compartir frases especialment poètiques o divertides amb els teus amics.  

Aquests dos vídeos et mostren què faràs i com programar-ho.

Què aprendràs?

Aprendràs sobre llistes, un tipus especial de variable. Les llistes són una manera útil d'emmagatzemar dades en llistes.

Com funciona

  • Quan sacseges la teva micro:bit de la BBC, es crea una frase aleatòria que consta d'un adjectiu, substantiu, verb i després adverbi, per exemple, "un ocell preciós menja ràpidament".
  • Pots utilitzar la teva frase per començar un poema o al costat d'altres frases generades per aquest programa per escriure un poema sencer.
  • El programa utilitza quatre llistes anomenades "adjectius", "substantius", "verbs" i "adverbis".
  • Cada llista emmagatzema una llista de paraules. Cada element d'una llusta s'anomena element. Els elements estan numerats amb un índex. Per exemple, la llista 'substantiu' inclou tres elements: element 0, ocell; element 1, papallona; i l'element 2, libèl·lula. Els índexs es numeren a partir de 0 perquè els ordinadors comencen a comptar a 0.
  • Quan sacseges la teva micro:bit, s'escull un nombre aleatori entre 0 i 2 per a cada llista. Els elements d'aquests índexs es mostren a la pantalla LED de la micro:bit.

Què necessites

  • Micro:bit (o simulador MakeCode )
  • Editor de MakeCode
  • Piles (opcional)

Pas 2: Programa-ho

1# Imports go at the top
2from microbit import *
3import random
4
5adjectives = ['beautiful', 
6           'delicate',
7           'bright']
8
9nouns = ['bird', 
10           'butterfly',
11           'dragonfly']
12
13verbs = ['eats', 
14           'flies',
15           'flutters']
16
17adverbs = ['swiftly', 
18           'silently',
19           'skillfully']
20
21while True:
22    if accelerometer.was_gesture('shake'):
23        choice = random.randint(0, len(adjectives)-1)
24        display.scroll(adjectives[choice])        
25        choice = random.randint(0, len(nouns)-1)
26        display.scroll(nouns[choice])
27        choice = random.randint(0, len(verbs)-1)
28        display.scroll(verbs[choice])
29        choice = random.randint(0, len(adverbs)-1)
30        display.scroll(adverbs[choice]) 

Pas 3: Millora-ho

  • Afegeix més adjectius, substantius, verbs i adverbis al programa.
  • Troba una manera de generar més línies per al teu poema utilitzant altres entrades com el botó A o el botó B.
  • Pots escriure un programa per generar un haiku?