Une conditionnelle pour le tarif de la piscine
Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.
Créer un compteObjectif travaillé
La piscine municipale propose deux tarifs d'entrée :
- $ 2 $ € pour les enfants de moins de $ 12 $ ans (donc d'âge strictement inférieur à $ 12 $) ;
- $ 5 $ € pour toute personne âgée de $ 12 $ ans ou plus.
On souhaite écrire un programme Scratch qui demande l'âge de la personne, puis affiche le tarif à payer.
- Quel tarif paye un enfant âgé de $ 8 $ ans ? Et un adulte de $ 30 $ ans ? Et une personne ayant exactement $ 12 $ ans ?
Recopier et compléter le programme Scratch ci-dessous en remplaçant les pointillés :
- Pour fidéliser les familles, la piscine ajoute un troisième tarif : l'entrée est gratuite (tarif $ 0 $ €) pour les enfants de moins de $ 5 $ ans. Décrire la modification à apporter au programme. On pourra écrire le nouveau programme.
Corrigé
On compare l'âge à $ 12 $ :
- $ 8 < 12 $ : l'enfant paye $ 2 $ € ;
- $ 30 \geqslant 12 $ : l'adulte paye $ 5 $ € ;
- $ 12 \geqslant 12 $ : une personne de $ 12 $ ans n'est plus dans la tranche des « moins de $ 12 $ ans », elle paye $ 5 $ €.
La condition « moins de $ 12 $ ans » se traduit par « age $ < 12 $ ». Si elle est vraie, le tarif vaut $ 2 $ ; sinon il vaut $ 5 $. Le programme complété est :
Pour gérer trois tarifs, on imbrique une seconde instruction conditionnelle à l'intérieur du « si » : on teste d'abord si l'âge est inférieur à $ 5 $ ans (gratuit), puis, sinon, s'il est inférieur à $ 12 $ (tarif réduit), sinon plein tarif. Le programme devient :
Vérification : un enfant de $ 3 $ ans tombe dans la première branche (gratuit), un enfant de $ 8 $ ans tombe dans la deuxième ($ 2 $ €), un adulte de $ 30 $ ans dans la dernière ($ 5 $ €).
Pour réviser : Utiliser une instruction conditionnelle dans Scratch