Les Structures de contrôles itératives Chap. 4 Leçon 2 Les Structures de contrôles itératives Plan : Introduction La structure itérative complète Les structures itératives à condition d’arrêt exercices
I- Introduction Dans les chapitres précédents nous avons appris à faire des programmes calculant des résultats dont le nombre est petit, mais ceci est insuffisant lorsque le même traitement se répète plusieurs fois et les résultats se multiplient. D’où la nécessité des structures itératives (ou répétitives). Soit les exemples suivants : Exemple 1 : Un élève veut vider son cartable qui contient 5 cahiers. Si on analyse cet exemple on verra qu’il y a un traitement ( tirer un cahier) qui va se répéter un nombre connu de fois (égale à 5). On peut résumé ça en : Pour i de 1 à 5 répéter tirer un cahier Fin pour
Exemple 2 : Un élève veut vider son cartable qui contient un nombre inconnu de cahiers. Si on analyse cet exemple on verra qu’il y a deux méthodes possibles : On vérifie si le cartable est vide (la condition d’arrêt du traitement) si oui on ne va rien faire si non on va tirer un cahier ( le traitement à faire) et on va répéter ca jusqu’à ce que le cartable soit vide. on peut résumé ça en : tant que ( cartable non vide ) faire tirer un cahier fin tant que On tire un cahier (on a supposé depuis le début que le cartable n’est pas vide) puis on vérifie si le cartable est vide ou non sinon on répète le même traitement jusqu’à ce qu’il soit vide.
on peut résumé ça en : répéter tirer un cahier jusqu’à (cartable vide) D’après ces exemples on peut dire qu’il existe deux structure itératives : Structure itérative complète où le nombre d’itérations est connu à l’avance Structure itératives à condition d’arrêt où le nombre d’itérations n’est pas connu à l’avance
II- Structure Itérative a condition d’arrêt * La structure Répéter ….jusqu’à : a) Syntaxe : Analyse [init] répéter traitement jusqu’à (condition(s) d’arrêt) Algorithme …………. …………. Init Répéter Pascal ………….; …………. ; Init Repeat Until (condition(s) d’arrêt); b) Remarques : On utilise cette structure de répétition si le nombre e répétition est inconnu à l’avance. L’arrêt du traitement est générer si la(les) condition(s) d’arrêt = vraie; Le traitement itératif doit s’exécuter au moins une fois.
* La boucle tant que ….faire : a) Syntaxe : Analyse [init] tantque non (condition(s) d’arrêt) faire traitement fin tantque Algorithme …………. …………. Init tantque non (condition(s) d’arrêt) Fin tantque Pascal ………….; …………. ; Init While non (condition(s) d’arrêt) do traitement; b) Remarques : On utilise cette structure de répétition si le nombre de répétition est inconnu à l’avance. L’arrêt du traitement est générer si la(les) condition(s) d’arrêt = faux; Le traitement itératif peut ne pas s’exécuter .
III- Applications a) Application 1: soit l’algorithme suivant : 0)debut inconnu lire(ch) Lire(car) [trouve<-faux; i<-0] repeter i<-i+1 si ch[i]=car alors trouve<- vrai finsi jusqu’à (trouve ou (i=long(ch)) 4) Si (trouve) alors ecrire(car, ‘’dans’’,ch) sinon ecrire(car,’’non dans ‘’, ch) 5) Fin inconnu Travail à faire : A- dans quel cas utilise ton une structure répétitive à condition d’arrêt? B- Donner une comparaison entre les deux structures répétitives Tant que .. Faire et Répéter..jusqu’à
C- Réécrire l’algorithme ci-dessus tout en remplaçant la boucle répéter …jusqu’à par la boucle Tant que ..Faire D- Quel est le rôle de ce programme E- Traduire cet algorithme en Pascal b) Application 2 : Ecrire une analyse, un algorithme et un programme Pascal permettant de saisir une entier de 3 chiffres et d’afficher si c’est un nombre cubique ou non. Un nombre est dit cubique s’il est égale à la somme des cubes de ses chiffres( exemple 153= 13+ 53+33).