Skip to content

Actividad

Generador de poesía

Intermedio | MakeCode, Python | Acelerómetro, Pantalla LED | Aleatorización, Gramática, Poesía

Paso 1: Hazlo

¿Qué es?

El proyecto generador de poesía crea frases aleatorias que se pueden utilizar en un poema, como una contraseña o para iniciar una historia. Está bien compartir frases especialmente poéticas o divertidas con tus amigos.  

Estos dos vídeos te enseñarán qué vas a hacer y cómo programarlo:

¿Qué aprenderás?

Aprenderás sobre las matrices, un tipo especial de variable. Las matrices son una forma útil de almacenar datos en listas..

Cómo funciona

  • Cuando agitas tu tarjeta micro:bit, se crea una frase aleatoria formada por un adjetivo, un nombre, un verbo, y a continuación un adverbio, por ejemplo, «el hermoso pájaro come rápidamente».
  • Puedes utilizar tu frase para iniciar un poema o junto a otras frases generadas por este programa para escribir un poema completo.
  • El programa utiliza cuatro matrices denominadas "adjetivos", "nombres", "verbos", y "adverbios".
  • Cada matriz almacena una lista de palabras. Cada ítem en una matriz se denomina elemento. Los elementos se numeran con un índice. Por ejemplo, la matriz "nombre" incluye tres elementos: elemento 0, pájaro; elemento 1, mariposa; y elemento 2, libélula. Los índices se numeran a partir del 0 porque los ordenadores empiezan a contar desde 0.
  • Cuando agitas tu micro:bit, se elige un número aleatorio entre 0 y 2 para cada matriz. Los elementos para esos índices se muestran en la pantalla LED de la micro:bit.

Qué necesitas

  • micro:bit (o simulador MakeCode)
  • Editor de MakeCode
  • pilas (opcionales)

Paso 2: Prográmalo

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]) 

Paso 3: Mejóralo

  • Añada más adjetivos, sustantivos, verbos y adverbios al programa.
  • Encuentra una forma de generar más frases para tu poema usando otras entradas como el botón A o el botón B.
  • ¿Puedes escribir un programa para generar un haiku?