Ignorer la navigation

Etape 8 - Défi programmation n°5

En îlot

Les questions ci-dessous doivent obligatoirement être réalisées sur les deux ordinateurs de l'îlot.

Manipulations raisonnées sous la responsabilité de l'élève gestionnaire.

Ne pas utiliser les blocs de la version V2 de la carte micro:bit

Mode opératoire :

Niveau Expert

1- Mettre au point le programme d'un jeu où le joueur doit éviter des bombes qui tombent du ciel (voir description ci-dessous) :

Au collège, visionner la vidéo depuis T/travail/TechnologiePC/4eme/Activité 6-1/pluie bombes.mp4

Le joueur est matérialisé par une LED qui se déplace uniquement sur la ligne 4 (déplacement à gauche par appui sur le bouton A et déplacement à droite par appui sur le bouton B).

L'appui simultané sur les bouton A et B démarre la partie.

Les bombes sont matérialisées par une des leds de la matrice. Elles tombent les unes après les autres à la verticale de la ligne 0 jusqu'à la ligne 4. La vitesse de chute des bombes est définie par une pause de 100 ms entre deux lignes. La colonne de chaque bombe est choisie de façon aléatoire. La luminosité des bombes est réduite à la valeur 50.

Si la bombe ne touche pas le joueur au niveau de la ligne 4 (bord bas de la matrice), le score s'incrémente (+1).

Si la bombe touche le joueur, la partie est terminée et le score est affiché.

Si le score est supérieur à 10, la vitesse de chute des bombes est accélérée (pause entre deux lignes = 75 ms)

Le joueur et les bombes seront programmés avec des lutins (sprites - catégorie )

Coordonnées des LEDs de la matrice

Algorithme

Au démarrage

Initialiser les variables et créer le joueur

Fin démarrage

  

Lorsque les boutons A et B sont pressés simultanément

Mettre à 1 une variable signalant l'ordre départ du jeu

Fin lorsque

   

Lorsque le bouton A est pressé

Déplacer le joueur d'une case vers la gauche

Fin lorsque

   

Lorsque le bouton B est pressé

Déplacer le joueur d'une case vers la droite

Fin lorsque

    

Toujours faire

Tant que l'ordre de départ est signalé

Créer aléatoirement une bombe d'intensité lumineuse 50

Régler la luminosité du sprite bombe à la valeur 50

accélérer la chute des bombes si le score est supérieur à 10

Déplacer 4 fois la bombe d'une case vers le bas (faire une pause entre chaque déplacement)

Arrêt du jeu Si la bombe touche le joueur

Augmenter le score de +1 et supprimer la bombe


2- Faire une démonstration du bon fonctionnement au Professeur sur le simulateur.

3- Insérer une photo du programme bloc dans votre document élève "Activité 61 - 4emeYilotZ" (impression écran > ctrl+V > recadrer).

4- Télécharger le programme dans la carte micro:bit et l'essayer en réel.

Niveau intermédiaire

1- Mettre au point, en utilisant les blocs donnés ci-dessous, le programme d'un jeu où le joueur doit éviter des bombes qui tombent du ciel (voir description ci-dessous) :

Le joueur est matérialisé par une LED qui se déplace uniquement sur la ligne 4 (déplacement à gauche par appui sur le bouton A et déplacement à droite par appui sur le bouton B).

L'appui simultané sur les bouton A et B démarre la partie.

Les bombes sont matérialisées par une des leds de la matrice. Elles tombent les unes après les autres à la verticale de la ligne 0 jusqu'à la ligne 4. La vitesse de chute des bombes est définie par une pause de 100 ms entre deux lignes. La colonne de chaque bombe est choisie de façon aléatoire. La luminosité des bombes est réduite à la valeur 50.

Si la bombe ne touche pas le joueur au niveau de la ligne 4 (bord bas de la matrice), le score s'incrémente (+1).

Si la bombe touche le joueur, la partie est terminée et le score est affiché.

Si le score est supérieur à 10, la vitesse de chute des bombes est accélérée (pause entre deux lignes = 75 ms)

Le joueur et les bombes sont programmés avec des sprites (catégorie )

Coordonnées des LEDs de la matrice

2- Faire une démonstration du bon fonctionnement au Professeur sur le simulateur.

3- Insérer une photo du programme bloc dans votre document élève "Activité 61 - 4emeYilotZ" (impression écran > ctrl+V > recadrer).

4- Télécharger le programme dans la carte micro:bit et l'essayer en réel.

Niveau débutant

1- Mettre au point, à partir de l'algorithme donné ci-dessous, le programme d'un jeu où le joueur doit éviter des bombes qui tombent du ciel (voir description ci-dessous) :

Le joueur est matérialisé par une LED qui se déplace uniquement sur la ligne 4 (déplacement à gauche par appui sur le bouton A et déplacement à droite par appui sur le bouton B).

L'appui simultané sur les bouton A et B démarre la partie.

Les bombes sont matérialisées par une des leds de la matrice. Elles tombent les unes après les autres à la verticale de la ligne 0 jusqu'à la ligne 4. La vitesse de chute des bombes est définie par une pause de 100 ms entre deux lignes. La colonne de chaque bombe est choisie de façon aléatoire. La luminosité des bombes est réduite à la valeur 50.

Si la bombe ne touche pas le joueur au niveau de la ligne 4 (bord bas de la matrice), le score s'incrémente (+1).

Si la bombe touche le joueur au niveau de la ligne 4, la partie est terminée et le score est affiché.

Si le score est supérieur à 10, la vitesse de chute des bombes est accélérée (pause entre deux lignes = 75 ms)

Le joueur et les bombes seront programmés avec des sprites (catégorie )

Coordonnées des LEDs de la matrice

Au démarrage

Stocker dans la variable joueur, de type sprite, les coordonées x = 2 et y = 4 (colonne 2, ligne 4)

Stocker dans la variable Départ la valeur 0

Stocker dans la variable vitesse la valeur 100

Fin démarrage

  

Lorsque les boutons A et B sont pressés simultanément

Stocker dans la variable Départ la valeur 1

Fin lorsque

   

Lorsque le bouton A est pressé

Le sprite Joueur se déplace de -1 (d'une colonne à gauche)

Fin lorsque

   

Lorsque le bouton B est pressé

Le sprite Joueur se déplace de 1 (d'une colonne à droite)

Fin lorsque

    

Toujours faire

Tant que la variable Départ est égale à 1 faire

Stocker dans la variable bombe, de type sprite, les coordonées x = nombre choisi au hasard entre 0 et 4 et y = 0 (colonne au hasard, ligne 0)

Régler la luminosité du sprite bombe à la valeur 50

Si la variable score est supérieure à 10 alors

Stocker dans la variable vitesse la valeur 75

Fin Si

Répéter 4 fois

Faire une pause d'une durée définie par la valeur contenue dans la variable vitesse

Modifier la valeur de la coordonnée Y du sprite bombe de +1

Fin Répéter

Faire une pause d'une durée définie par la valeur contenue dans la variable vitesse

Si le sprite bombe touche le sprite Joueur alors

Fin du jeu (Game Over + affichage du score)

Fin Si

Supprimer le sprite bombe (effacer)

Stocker dans la variable score le résultat de la somme variable score + 1

Fin Tant que

Fin Toujours

2- Faire une démonstration du bon fonctionnement au Professeur sur le simulateur.

3- Insérer une photo du programme bloc dans votre document élève "Activité 61 - 4emeYilotZ" (impression écran > ctrl+V > recadrer).

4- Télécharger le programme dans la carte micro:bit et l'essayer en réel.

Bonus rapidité

Le Rapporteur de votre îlot doit prévenir le professeur que vous avez terminé l'étape 8.