13. Jeu de devinette numérique (programmation en binôme)¶
Aperçu rapide de la journée
Dans cette activité de programmation en paires, vous allez créer un jeu de devinettes qui utilise plusieurs des concepts que nous avons appris.
- 20IN-PT.1 Appliquer diverses stratégies de résolution de problèmes pour résoudre des problèmes de programmation dans le cours d’Informatique 20.
- 20IN-FP.1 Se servir de différents types de données, y compris entier, virgule flottante, booléen et chaine pour résoudre des problèmes de programmation.
- 20IN-FP.2 Faire des recherches sur la manière dont les structures de contrôle affectent le déroulement du programme.
Ce sera votre première essai dans la programmation en binôme. L’un de vous devrait être au clavier et à la souris, tandis que l’autre partenaire aide à discuter des idées. Changez de rôle toutes les 10 minutes.
13.1. Jeu de base¶
Pour ce projet, vous allez créer un jeu qui effectue les tâches suivantes:
- génère un nombre aléatoire de 1 à 100 et le sauver dans une variable
- répète ce qui suit jusqu’à ce que l’utilisateur devine le numéro
- oblige l’utilisateur à deviner le nombre (en utilisant le bloc demande)
- indique à l’utilisateur si le nombre est trop élevé ou trop bas
- félicite l’utilisateur lorsqu’il trouve le bon numéro avec un message du type “Bravo! Vous avez deviné le bon numéro en 9 essais!”
Lorsque vous avez terminé la fonctionnalité de base, levez la main et je vous dirai comment vous pouvez encore l’améliorer !
Si la description ci-dessus n’a pas de sens, voici une courte vidéo de ce à quoi pourrait ressembler le jeu de devinettes de base:
13.2. Les Extensions¶
Voici des extras qui peuvent être ajoutés au jeu de base:
- Bien trop haute/trop basse, si la devinette est très loin du nombre réel
- très proche, mais trop haut/bas, si l’on suppose que le nombre réel est vraiment proche
- Encore trop haut/bas, si la supposition est supérieure/inférieure au nombre réel plusieurs fois de suite
- Permettre seulement un certain nombre de tentatives avant terminer le jeu
- Rôles inversés CPU/humain