Exercices#

Exercice 7#

Dans cet exercice, vous allez déplacer un pixel sur l'écran, d'abord sur la première ligne et ensuite sur tout l'écran.

Dans le programme ci-dessous le premier pixel de la première ligne est allumé.

  1. En utilisant une boucle for, déplacez le pixel sur la première ligne.

    Astuce

    Dans chaque passage dans la boucle, il faudra effacer tout l'écran en utilisant la fonction display.clear(), avant d'afficher le pixel au nouvel emplacement

  2. [Optionnel] En utilisant une deuxième boucle for, faites parcourir au pixel tout l'écran.

    Astuce

    Une des boucles va modifier la valeur de x et l'autre la valeur de y.

  3. [Optionnel] Modifiez la vitesse de déplacement du pixel.

from microbit import *

# coordonnées du pixel
x = 0
y = 0

# affichage du pixel
display.set_pixel(x, y, 9)

Exercice 8#

  1. Écrivez un programme qui affiche l'image de Pacman Image.PACMAN lorsque le bouton A est appuyé et affiche l'image d'un fantôme Image.GHOST lorsque c'est le bouton B.

  2. Ajoutez que l'écran ne doit rien afficher quand aucun bouton n'est pressé.

    Astuce

    La fonction display.clear() efface l'écran, c'est-à-dire éteint toutes les LED.

from microbit import *

# Écrivez le programme ici

Exercice 9#

  1. En utilisant une boucle while, écrivez un programme qui affiche un décompte: 9, 8, ... et lorsque le compteur est arrivé à 0, affichez "BOOM" suivi de l'image d'un crâne. (Image.SKULL).

  2. Ajoutez un son après l'affichage du crâne.

    Astuce

    Le micro:bit permet d'ajouter des sons. Voir le site officiel microbit.org pour les détails.

from microbit import *

# Écrivez le programme ici

Exercice 10#

  1. Écrivez un programme qui simule un lancer de dé, c'est-à-dire que lorsque vous secouez le micro:bit, un nombre aléatoire entre 1 et 6 doit s'afficher.

    Astuce

    La fonction randint(a, b) du module random renvoie un nombre entier "aléatoire" entre a et b, tous les deux compris (\(a \leq randint(a,b) \leq b\)).

  2. [Optionnel] Modifiez le programme de la partie a) pour qu'il affiche la valeur obtenue comme sur un dé: ⚀ ⚁ ⚂ ⚃ ⚄ et ⚅.

Astuce

Le micro:bit contient un accéléromètre qui permet de connaître sa position, ainsi que ses mouvements. La fonction accelerometer.was_gesture('shake') renvoie True si le micro:bit a été secoué.

from microbit import *

# Écrivez le programme ici

Exercice 11#

Écrivez un programme qui:

  • allume le pixel du centre de l'écran,

  • si l'utilisateur appuie sur le bouton A, le pixel se déplace à gauche,

  • si l'utilisateur appuie sur le bouton B, le pixel se déplace à droite,

  • si le pixel est au bord de l'écran, il ne se passe rien.

from microbit import *

# Écrivez le programme ici

Exercice 12#

Écrivez un programme qui mesure votre temps de réaction en secondes.

  1. Des images d'animaux défilent aléatoirement sur l'écran. (Image.RABBIT, Image.COW, Image.TORTOISE, Image.DUCK, Image.SNAKE, Image.BUTTERFLY, Image.GIRAFFE)

  2. Lorsqu'une flèche vers la droite Image.ARROW_E apparaît, il faut appuyer le plus rapidement possible sur le bouton B. Le temps de réaction sera calculé et affiché.

  3. Ajoutez une difficulté supplémentaire:
    Lorsqu'une flèche vers la gauche Image.ARROW_W apparaît, il faut appuyer sur le bouton A.

Astuce

La fonction running_time() renvoie le nombre de millisecondes depuis le démarrage du micro:bit.

from microbit import *

# Écrivez le programme ici