Algorithmique et programmation

Publié le 25 juin 2016 Modifié le : 25 oct. 2017

Écrire à l'auteur

Le  samedi 25 juin 2016

Jeu de nombres

Devine le nombre auquel le lutin pense !

  • Jeu de nombres

     

     

     

     

     

    Présentation de l’activité


     

     

    Le but du problème est de reproduire ce jeu de nombres puis de lui apporter des améliorations. On y consacrera une heure.

     

     

     

     

     

     

     

    Public


     

     

    Cette situation s'adresse à des élèves de cycle 4 ayant déjà pris le logiciel Scratch en main, par exemple pour des constructions de figures.

     

     

     

     

     

    Objectifs


     

     

    • Ecrire, tester, corriger un programme en réponse à un problème donné.

     

    • Découvrir les notions de déclenchement d'une action par un événement extérieur et d'instructions conditionnelles.

     

    • Réinvestir la notion de variable.

     

     

     

     

     

    Prérequis


     

     

    Mathématiques

     

    • Comparaison de deux entiers.

     

     

    T.I.C.E.

     

    • Scratch : notions de programmation par blocs avec Scratch et de variable.

     

     

     

     

     

    Déroulement de l’activité


     

     

    Présentation

     

     

    On annonce aux élèves que leur travail va consister à programmer un jeu de type "plus grand / plus petit".

     

    Au vidéoprojecteur, on pourra le présenter à l'aide du fichier Jeu de nombres.sb2 (mettre la scène en mode "plein écran" pour ne pas montrer l'aire des scripts) ou de cette version en ligne.

     

     

    S'il est nécessaire de faire découvrir aux élèves les nouveaux blocs qui vont être mis en jeu dans sa programmation,

     

     

    calcul10

     

     

    on pourra :

     

    - S’appuyer sur le programme de démonstration : prog05

     

    - Faire réfléchir les élèves à une ébauche d’algorithme (en langage naturel) et au cours d’une mise en commun s’interroger sur les blocs dont il faudrait disposer pour le programmer. Le professeur montrera alors l’existence de ces blocs.

     

     

     

    Temps de recherche

     

     

    La programmation d'un algorithme permettant d'obtenir instantanément une évaluation de la pertinence et de la solidité de cet algorithme, on mettra des ordinateurs à disposition des élèves.

     

     

    Afin que chacun puisse analyser le jeu à programmer, on pourra diffuser ce lien auprès des élèves : https://scratch.mit.edu/projects/embed/114758154/?autostart=false

     

     

    Pour que les élèves s'approprient et réinvestissent plus facilement les nouveaux blocs, on pourra diffuser ou laisser visible le programme de démonstration "Prog05".

     

     

    Si nécessaire, on questionnera, au cas par cas, pour permettre à chacun d'avancer dans l'élaboration de son programme :

     

    - Quelles sont les actions à prendre en compte et à programmer ?

     

    - Pour chacune de ces actions, quels blocs utiliser ?

     

     

     

    Au cas par cas et selon les besoins, on questionnera à nouveau pour guider davantage dans la construction du programme :

     

     

    - Quels blocs pour choisir un nombre au hasard et le stocker ?

     

     nombres02

     

     

    - Quels blocs utiliser pour que le joueur puisse saisir ses réponses ?

     

    nombres03

     

     

    - Quels blocs pour analyser la réponse du joueur ?

     

    nombres04

     

     

    - Quels blocs pour répéter la saisie autant de fois que nécessaire ?

     

    nombres06

     

     

    Pour permettre au plus grand nombre d'achever leur programme, on prolongera le travail des élèves les plus rapides en leur demandant d'imaginer des améliorations pour ce jeu (voir "prologements possibles" ci-dessous).

     

     

     

    Bilan final

     

    Afin que les élèves gardent une trace de leur travail, les programmes pourront être imprimés.

     

    On reviendra sur la construction du programme (en le reconstruisant au vidéoprojecteur avec l'aide de la classe ou en projetant et en commentant ceux réalisés par les élèves). On mettra alors en avant les différentes stratégies pour répondre à un même problème, les instructions nouvelles et quelques "schémas type".

     

     

    nombres07

     

     

     

     

     

    Prolongements possibles


     

     

    - On souhaite rajouter un compteur d'essais.

     

    - A la fin du jeu, le lutin dresse un bilan de la stratégie du joueur en s'appuyant sur son nombre d'essais.

     

    - Au début du jeu, le lutin propose au joueur de choisir entre différents niveaux de difficulté.

      

    - On souhaite intégrer un chronomètre qui mesure le temps mis (ou qui impose un temps) pour trouver le nombre.

     

    En imaginant un nouveau programme de démonstration, on pourra alors présenter les blocs :

     

    calcul09

     

    La variable "chronomètre" stocke le temps écoulé (en seconde) depuis l'utilisation du bloc "réinitialiser le chronomètre".

     

     

     

     

     

    Documents utiles


     

     

    • Fichier Jeu de nombres.sb2

     

    • Fichier Jeu de nombres.sb2 (compteur d'essais)

     

    • Fichier Jeu de nombres.sb2 (niveaux de difficulté)

     

    • Fichier Jeu de nombres.sb2 (chronomètre)

     

    • Fichier Jeu de nombres.sb2 (temps limité)