2 – Scratch : les boucles

Exercice :
Scratch permet de faire saisir à l’utilisateur une valeur au clavier et de l’exploiter grâce à l’instruction demander et la variable réponse (rubrique « Catpeurs »). L’exemple ci-dessous utilise également l’instruction nombre aléatoire (rubrique « Opérateurs ») :

Essayez de trouver la bonne réponse, et pour rendre le jeu plus difficile il suffit de prendre des nombres entre 20 et 40…
On peut ensuite améliorer le jeu avec une boucle infinie (rubrique « Contrôle ») pour obtenir l’algorithme ci-dessous :

Maintenant le jeu recommence à chaque fois, tant que l’utilisateur n’appuie pas sur le bouton « Arrêt »… Vous avez tout compris ? A vous de jouer:
  1. Utilisez une variable et la boucle répéter jusqu’à pour arrêter le jeu au bout de 3 réponses justes
  2. Ecrivez un nouvel algorithme avec une boucle répéter n fois dans laquelle vous devez 100 fois de suite cacher le chat, attendre une demi-seconde puis montrer le chat (rubrique « Apparence »)
  3. Ecrivez maintenant un algorithme qui, à partir d’une variable a, affiche la valeur de la somme 1 + 2 + 3 + 4 + … + (a-1) + a (par exemple pour a=5 on doit obtenir 15). Modifiez ensuite le code pour calculer la factorielle de adonnée par 1 * 2 * 3 * 4 * … * (a-1) * a (par exemple pour a=5 on doit obtenir 120)
  4. Vous connaissez sûrement le jeu du nombre mystère, choisi au hasard par l’ordinateur: le joueur tente de le deviner et l’ordinateur répond par « Plus grand » ou « Plus petit » et on recommence… Utilisez une boucle répéter jusqu’à qui permettra d’arrêter le jeu quand le joueur a trouvé la bonne réponse.
  5. Améliorez le jeu en plaçant une limite au nombre d’essais possibles, par exemple 10: si cette limite est atteinte alors le joueur perd la partie.

Exercice Bonus
Vous avez aimé le jeu du nombre mystère (exercice 1.5) où un humain tente de trouver un nombre caché par l’ordinateur ? Maintenant faites l’inverse : choisissez mentalement un nombre mystère, et aidez l’ordinateur à le trouver en répondant « Plus grand » ou « Plus petit » à ses tentatives…