Correction des exercices
ANNEXE
314
si n < 0 ou n > 12
alors écrire «numéro incorrect»
sinon
{ si n = 2 alors nb = 28
sinon si n = 4 ou n = 6 ou n = 9 ou n = 11 alors nb = 30
sinon nb = 31
écrire «votre mois comporte», nb, « jours»
}
Voici une autre formulation, plus artificielle utilisant plusieurs choix successifs (moins efficace sur le plan de la rapidité d’exécution). Nous convenons de placer la valeur 0 dans la
variable nb lorsque la valeur de n est incorrecte, ce qui permet de « différer » l’écriture du
message « numéro incorrect » :
entier n, nb
écrire «donnez un numéro de mois»
lire n
si n<0 ou n>12 alors nb = 0
si n = 2
alors nb = 28
si n=4 ou n=6 ou n=9 ou n=11
alors nb = 30
si n=1 ou n=3 ou n=5 ou n=7 ou n=8 ou n=10 ou n=12 alors nb = 31
si nb <> 0 alors écrire «votre mois comporte», nb, « jours»
sinon écrire «numéro incorrect»
Attention à ne pas utiliser cette formulation :
si n = 4 ou n = 6 ou n = 9 ou n = 11 alors nb = 30
sinon nb = 31
En cas de réponse incorrecte, la variable nb prendrait d’abord la valeur 0, puis suite à l’instruction suivante, elle prendrait la valeur 31 !
Chapitre 5
Exercice 5.1
Il suffit d’utiliser une répétition jusqu’à, de cette manière :
entier nombre
répéter
{ écrire «donnez un entier positif inférieur à 100»
lire nombre
}
jusqu’à nombre>0 et nombre<100
écrire «merci pour le nombre », nombre
Exercice 5.2
Ici, on voit qu’il faut écrire l’un des deux messages «SVP, positif :» ou «inférieur
à 100 :», uniquement lorsque la réponse est incorrecte, en utilisant une instruction de
choix à l’intérieur de la répétition jusqu’à. On peut procéder ainsi :
ANNEXE
314
si n < 0 ou n > 12
alors écrire «numéro incorrect»
sinon
{ si n = 2 alors nb = 28
sinon si n = 4 ou n = 6 ou n = 9 ou n = 11 alors nb = 30
sinon nb = 31
écrire «votre mois comporte», nb, « jours»
}
Voici une autre formulation, plus artificielle utilisant plusieurs choix successifs (moins efficace sur le plan de la rapidité d’exécution). Nous convenons de placer la valeur 0 dans la
variable nb lorsque la valeur de n est incorrecte, ce qui permet de « différer » l’écriture du
message « numéro incorrect » :
entier n, nb
écrire «donnez un numéro de mois»
lire n
si n<0 ou n>12 alors nb = 0
si n = 2
alors nb = 28
si n=4 ou n=6 ou n=9 ou n=11
alors nb = 30
si n=1 ou n=3 ou n=5 ou n=7 ou n=8 ou n=10 ou n=12 alors nb = 31
si nb <> 0 alors écrire «votre mois comporte», nb, « jours»
sinon écrire «numéro incorrect»
Attention à ne pas utiliser cette formulation :
si n = 4 ou n = 6 ou n = 9 ou n = 11 alors nb = 30
sinon nb = 31
En cas de réponse incorrecte, la variable nb prendrait d’abord la valeur 0, puis suite à l’instruction suivante, elle prendrait la valeur 31 !
Chapitre 5
Exercice 5.1
Il suffit d’utiliser une répétition jusqu’à, de cette manière :
entier nombre
répéter
{ écrire «donnez un entier positif inférieur à 100»
lire nombre
}
jusqu’à nombre>0 et nombre<100
écrire «merci pour le nombre », nombre
Exercice 5.2
Ici, on voit qu’il faut écrire l’un des deux messages «SVP, positif :» ou «inférieur
à 100 :», uniquement lorsque la réponse est incorrecte, en utilisant une instruction de
choix à l’intérieur de la répétition jusqu’à. On peut procéder ainsi :
