Arithmétique

Saisie contrôlée : répéter jusqu’à

Énoncé

Écrire une procédure Saisir qui redemande N jusqu’à obtenir un entier entre 10 et 30, bornes incluses. Le programme principal appelle cette procédure puis affiche N.

Exemples et cas limites

Saisissez ces valeurs dans la console pour vérifier votre résultat :

Entrée
N = 9
N = 31
N = 20
Sortie attendue
20
Entrée
N = 10
Sortie attendue
10
Entrée
N = 30
Sortie attendue
30

Code algorithmique

saisie_controlee.algo
1algorithme saisie_controlee
2debut
3 saisir(n)
4 ecrire_nl(n)
5 // compléter le traitement demandé dans l’énoncé.
6fin
7
8procedure saisir(@n : entier)
9debut
10 // compléter le traitement demandé dans l’énoncé.
11fin

Méthode

  1. Lire N dans une boucle Répéter.
  2. Arrêter avec Jusqu’à 10 ≤ N ≤ 30.
À retenir :

Jusqu’à porte sur la condition de validité, pas sur l’erreur. La boucle lit au moins une fois. @n transmet la valeur saisie au programme principal.

Comprendre la correction

Déroulement sur un exemple

  1. Avec les saisies 9, 31 puis 20, la procédure lit d’abord 9. La condition 10 ≤ n ≤ 30 est fausse.
  2. 31 est également refusé. Pour 20, les deux bornes sont respectées et la boucle se termine.
  3. Le paramètre @n conserve 20 dans le programme principal, qui l’affiche. 10 et 30 sont aussi acceptés.

Erreurs à éviter

  • Avec OU entre les deux bornes, 9 serait accepté car 9 ≤ 30. Il faut satisfaire les deux bornes.
  • Un simple SI ne redemande pas une saisie incorrecte. Répéter permet de recommencer.
Consulter le guide de syntaxe algorithmique