nb50←nb50+1
montant←montant-50
FinTantQue
Tant Que montant>=20 Faire
nb20←nb20+1
montant←montant-20
FinTantQue
...
Tant Que montant>=0.02 Faire
nb002←nb002+1
montant←montant-0.02
FinTantQue
Tant Que montant>=0.01 Faire
nb001←nb001+1
montant←montant-0.01
FinTantQue
Si nb500>0 Alors
Ecrire nb500," billets de 500 euros"
FinSI
Si nb200>0 Alors
Ecrire nb200," billets de 200 euros"
FinSI
...
Si nb002>0 Alors
Ecrire nb002," pièces de 2 centimes"
FinSI
Si nb001>0 Alors
Ecrire nb001," pièces de 1 centime"
FinSI
Fin
Cet algorithme est désespérant. Il est parfait en terme de fonctionnement et de logique, mais il est
épouvantablement long, proportionnel au nombre de coupures disponibles dans chaque pays. Tellement long
d’ailleurs que certaines parties totalement évidentes ont été remplacées par des "…". Estce possible de faire plus
court ? C’est qu’il vous manque encore quelques notions et éléments que vous découvrirez dans les prochains
chapitres. Il est évidemment possible de faire plus court. Vous verrez comment faire au prochain chapitre avec les
tableaux, puis dans le suivant encore avec les fonctions.
g. Trois boucles
Un dernier exemple de boucle "Tant Que" va vous montrer une intégration avec trois boucles. Le but de cet anodin
algorithme est de trouver pour quelles valeurs de A, B et C, ABC= A 3 +B 3 +C 3 , A représentant les centaines, B les
dizaines et C les unités. La recherche sera limitée pour chaque valeur entière comprise entre 1 et 10 (bien entendu,
vous pouvez augmenter l’intervalle mais celuici n’a pas été choisi au hasard). L’algorithme nécessite trois boucles
pour chacune des valeurs. C’est bien entendu au sein de la dernière boucle que les valeurs sont calculées et les
résultats affichés en cas d’égalité.
Variables a,b,c,nb1,nb2 en Numérique
Début
a←1
b←1
c←1
Tant que a<=10 Faire
Tant que b<=10 Faire
Tant que c<=10 Faire
nb1←a*100+b*10+c
nb2←a³+b³+c³
Si nb1=nb2 Alors
Ecrire nb1,a,b,c
FinSI
c←c+1
FinTantQue
b←b+1
FinTantQue
a←a+1
FinTantQue
Fin
- 12 -
© ENI Editions - All rigths reserved - Jonifar lina
84
montant←montant-50
FinTantQue
Tant Que montant>=20 Faire
nb20←nb20+1
montant←montant-20
FinTantQue
...
Tant Que montant>=0.02 Faire
nb002←nb002+1
montant←montant-0.02
FinTantQue
Tant Que montant>=0.01 Faire
nb001←nb001+1
montant←montant-0.01
FinTantQue
Si nb500>0 Alors
Ecrire nb500," billets de 500 euros"
FinSI
Si nb200>0 Alors
Ecrire nb200," billets de 200 euros"
FinSI
...
Si nb002>0 Alors
Ecrire nb002," pièces de 2 centimes"
FinSI
Si nb001>0 Alors
Ecrire nb001," pièces de 1 centime"
FinSI
Fin
Cet algorithme est désespérant. Il est parfait en terme de fonctionnement et de logique, mais il est
épouvantablement long, proportionnel au nombre de coupures disponibles dans chaque pays. Tellement long
d’ailleurs que certaines parties totalement évidentes ont été remplacées par des "…". Estce possible de faire plus
court ? C’est qu’il vous manque encore quelques notions et éléments que vous découvrirez dans les prochains
chapitres. Il est évidemment possible de faire plus court. Vous verrez comment faire au prochain chapitre avec les
tableaux, puis dans le suivant encore avec les fonctions.
g. Trois boucles
Un dernier exemple de boucle "Tant Que" va vous montrer une intégration avec trois boucles. Le but de cet anodin
algorithme est de trouver pour quelles valeurs de A, B et C, ABC= A 3 +B 3 +C 3 , A représentant les centaines, B les
dizaines et C les unités. La recherche sera limitée pour chaque valeur entière comprise entre 1 et 10 (bien entendu,
vous pouvez augmenter l’intervalle mais celuici n’a pas été choisi au hasard). L’algorithme nécessite trois boucles
pour chacune des valeurs. C’est bien entendu au sein de la dernière boucle que les valeurs sont calculées et les
résultats affichés en cas d’égalité.
Variables a,b,c,nb1,nb2 en Numérique
Début
a←1
b←1
c←1
Tant que a<=10 Faire
Tant que b<=10 Faire
Tant que c<=10 Faire
nb1←a*100+b*10+c
nb2←a³+b³+c³
Si nb1=nb2 Alors
Ecrire nb1,a,b,c
FinSI
c←c+1
FinTantQue
b←b+1
FinTantQue
a←a+1
FinTantQue
Fin
- 12 -
© ENI Editions - All rigths reserved - Jonifar lina
84
