Skip to content

Activité

Poetry generator

Intermédiaire | MakeCode, Python | Accéléromètre, Écran LED | Grammaire, Poésie, Randomisation

Étape 1 : Fais-le

Qu'est-ce que c'est ?

Le projet de générateur de poésie crée des phrases aléatoires que vous pouvez utiliser dans un poème, comme mot de passe ou pour commencer une histoire. Il est agréable de partager des phrases particulièrement poétiques ou drôles avec vos amis.  

Ces deux vidéos vous montrent ce que vous allez faire et comment le coder :

Qu'allez-vous apprendre?

Vous allez connaître les tableaux, une variable d'un type particulier. Les tableaux représentent une manière pratique de stocker des données dans des listes.

Comment ça marche

  • Lorsque vous secouez votre BBC micro:bit, une phrase aléatoire composée d'un adjectif, d'un nom, d'un verbe et d'un adverbe est créée, par exemple "un bel oiseau mange rapidement".
  • Vous pouvez utiliser votre phrase pour commencer un poème ou l'associer à d'autres phrases générées par ce programme pour écrire un poème entier.
  • Le programme utilise quatre tableaux appelés ‘adjectifs’, ‘noms’, ‘verbes’, and ‘adverbes’.
  • Chaque tableau contient une liste de mots. Chaque élement d'un tableau est appelé élément. Les éléments sont numérotés grâce à un index. Par exemple, le tableau "noms" comprend trois éléments : l'élément 0: oiseau ; l'élément 1: papillon et l'élément 2: libellule. Les indices sont numérotés à partir de 0 car les ordinateurs commencent à compter à 0.
  • Lorsque vous secouez votre micro:bit, un nombre aléatoire entre 0 et 2 est choisi pour chaque tableau. Les éléments correspondants à ces indices sont affichés sur l'écran LED du micro:bit.

Ce dont vous aurez besoin

  • micro:bit (ou simulateur MakeCode)
  • L'éditeur MakeCode
  • un boîtier de piles (optionnel)

Étape 2 : Programme-le

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

Étape 3 : Améliore-le

  • Add more adjectives, nouns, verbs, and adverbs to the program.
  • Find a way to generate more lines for your poem using other inputs such as button A or button B.
  • Can you write a program to generate a haiku?