AlgorithmeCoursInformatique

cours algorithme : INSTRUCTIONS REPETITIVES (LES BOUCLES)

Ce cours gratuit d’algorithme traite les instructions répétitives (les boucles)

cours et tutoriel algorithme / exercises algorithme / formation algorithme / initiation à la programmation

Lire ce cours en premier si vous êtes débutants

Introduction

Les primitives itératives constituent des boucles qui répètent l’exécution d’un même bloc d’instructions un certain nombre de fois. Ce nombre est soit précisé à l’avance soit il dépendra de l’évolution de l’action algorithmique effectuée par le bloc à répéter.

Pour que la structure d’une boucle soit correcte, il faut qu’elle soit composée de quatre blocs élémentaires ou segments:

Bloc d’initialisation de la boucle : il sert comme point de départ des itérations,

Bloc de processus itératif ou corps de la boucle:il contient toutes les instructions à répéter à chaque itération,

Bloc de progression ou régression de l’indice (compteur de la boucle) : c’est un compteur qui fait évoluer la boucle,

Bloc de test de continuation : il effectue le contrôle pour décider la continuation ou l’arrêt de la récurrence.

cours algorithme : INSTRUCTIONS REPETITIVES.

En programmation,on distingue deux grands types de boucles:

5.2.1.Cas où le nombre d’itération n’est connu à l’avance.

Le nombre d’itérations du corps de la boucle n est pas connu à l’avance, mais il dépend de la réalisation d’une certaine condition au cours du traitement.

On distingue deux types d’instructions :

le test de contrôle est effectué au début de la boucle,

le test de contrôle est effectué à la fin de la boucle.

L’instruction Tant que…faire…FinTanque.

Tantvque condition de continuation Faire Actions
Fin Tantque

Les           instructions                  seront exécutées tant que la condition est vérifiée (valeur booléenne Vrai).

Le test est effectué à l’entrée de la boucle, donc les instructions peuvent être exécutées zéro fois si la condition est fausse à l’entrée de la boucle.

Remarque:

On peut avoir avec la même instruction “Ecrire” l’affichage d’un ou plusieurs messages et d’une ou plusieurs variables.

Exemple 2:

Ecrire (‘ la somme des deux nombres ‘ , a , ‘ et’ , b , ‘ est :’, S); Si a = 2 et b = 5, l’instruction ci-dessus s’exécutera ainsi :

La somme des deux nombres 2 et 5 est : 7

EXERCICES D’APPLICATION.

1)Soit trois nombres réels saisis au clavier. Ecrire un algorithme permettant d’effectuer : leur somme, leur produit et leur moyenne.

2)         Ecrire un algorithme qui lit successivement 4 chiffres (allant de 0 à 9) sur le clavier et affiche à l’écran, le nombre formé par ces 4 chiffres après l’avoir calculé et stocké en mémoire sous le nom Nre_forme. (Exemple: si les 4 chiffres sont: 3, 5, 2,8 alors le nombre formé est : Nbre_forme = 3528).

Proposer 3 méthodes différentes.

3) Permutation circulaire de deux nombres :

Ecrire un algorithme qui lit les valeurs de deux variables X et Y,puis change ces valeurs mutuellement et affiche à l’écran les nouvelles valeurs de X et Y.

Analyse du problème:

Remarque :

une somme calculée par itération est obligatoirement initialisée à 0,

un produit calculé par itération est obligatoirement initialisée à 1.

Organigramme:

Algorithme :

Var : anc_nom,nov_nom                :chaînes de 15 caractères; nbr :entier;

Début

Lire(anc_nom);

Lire(nov_nom);

nbr←  -2; Tantque anc_nom<>nov_nom Faire Anc_nom                                 nov_nom; Lire(nov_nom); nbr<_nbr+1; FinTantque.

Ecrire(nbr);

Fin

En programmation l’instruction de boucles la plus fondamentale est Tantque, en effet, toutes les autres boucles peuvent s’écrire avec la boucle Tantque.

L’instruction Répéter … jusqu’à.

Répéter
Instructions ;
Jusqu’à condition ;

En programmation l’instruction de boucles la plus fondamentale est Tantque, en effet, toutes les autres boucles peuvent s’écrire avec la boucle Tantque.

L’instruction Répéter … jusqu’à.

Répéter
Instructions ;
Jusqu’à condition ;

Les instructions délimitées par Répéter

et jusqu’à    seront exécutées jusqu’à ce que la condition soit vérifiée (valeur booléenne Vrai).

Le test est effectué à la fin de la boucle, donc les instructions sont exécutées au moins une fois même si la condition est fausse dès l’entrée de la boucle.

Exemple 4 :

Dans un cinéma, on désire calculer la moyenne d’âges de personnes s’intéressant à voir un film particulier.

Pour finir, l’utilisateur doit répondre par ‘N’ à la question posé par l’algorithme : “Encore une autre personne (O/N) ?”

Et on doit afficher la moyenne d’âges à l’écran.

Analyse du problème :

âges de personnes:age la moyenne d’âges:M_age La somme des ages :S_age Compteur du nombre de personnes:NP Réponse à la question:rep

Entrées

Sorties

Intermédiaires:


Algorithmique et techniques de programmation.

Exemple 5:

Ecrire un algorithme permettant de calculer la somme et la moyenne des N premiers nombres entiers.

S=1+2+3+…+N

Analyse du problème:

Entrées                                          le nombre N

Sorties                                           -la somme S

-la moyenne Moy

Formules                          S<-S+i,i=1 jusqu’àN fois Moy← S/N

On a besoin d’un compteur i qui doit s’ajouter à chaque fois à S et qui varie entre l et N.

Algorithme Somme_Moyenne;

Var

N,S,i:entiers;

Début Moy :réel;

Ecrire(S) ;

Ecrire(Moy);

Fin

Cas où le nombre d’itération est connu à l’avance.

Lorsque le nombre d’itération est connu à l’avance, on utilise l’instruction Pour…Faire…FinPour.


Pour variable de controle                     borne1 à borne2 Faire

Instructions;

FinPour                                                             

Remarque:

Lorsque bornel est inférieur à borne2, il s’agit d’une boucle progressive (incrémentation). Dans le cas contraire, il s’agit d’une boucle régressive (décrémentation).

Les instructions seront répétées

un nombre connu de fois.

En effet, la progression ou la

régression de la valeur de la

variable de contrôle (ici I) se

fait              automatiquement                et

s’incrémente par défaut de 1.

Remarques:

la variable de contrôle doit être déclarée,

la valeur de la variable de contrôle à la sortie de la boucle est la valeur finale (borne2)

le contenu de la variable de contrôle est exploité par une instruction, mais celle-ci ne peut pas le changer.

Les étapes d’exécutions de la boucle Pour sont les suivantes:

Ces etapes peuvent etre schématisées par l’organigramme suivant:

Exemple 6:

Ecrire un algorithme permettant de calculer la factori d’un nombre entier positif N.

N!=1*2*3*…*N

Autres articles

Guide : Implémenter get_iemedans des fichiers avec...
La fonction get_iemepermet de récupérer le i-ème élément d'un fichier...
Read more
Guide : Implémenter un Fichier en Tableau...
Les fichiers en tableaux circulaires (ou files d'attente circulaires )...
Read more
Guide : Fichiers en Tableaux Circulaires en...
Les tableaux circulaires (ou buffers circulaires) sont des structures de...
Read more

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *