Téléchargement d'épreuves

et

Cours gratuits

Structures de contrôle

Généralités

On distingue les structures séquentielles, les structures conditionnelles et les structures répétitives.


Structure séquentielle

C'est la structure la plus simple car il y’a aucune condition, aucune répétition, toutes les institutions s'exécute de façon séquentielle (étape par étape)
Exemple:
debut
lire(a)
lire(b)
c←a
a←b
b←c
écrire(a,b)
fin


Structure conditionnelle

Elle est utilisée pour résoudre des problèmes ayant une ou plusieurs alternatives. On distingue la structure "si" et "cas où".

La structure conditionnelle "si"

Elle existe sous deux formes:
syntaxe:
premier cas:
si condition alors action
fin si

deuxième cas:
si condition alors action 1
sinon action 2
fin si

Sémantique (explication)

Les mots soulignés sont reconnus par l'ordinateur.
Condition est un booléen
action peut être soit une instruction, soit un ensemble d'instruction, soit une structure de contrôle.

Fonctionnement

Premier cas: On exécute "action" uniquement lorsque la condition est vraie.
Deuxième cas: On exécute "action 1" uniquement lorsque la condition est vraie, et on exécute "action 2" uniquement lorsque la condition est fausse.

Exemple 1:

Ecrire un algorithme qui permet de lire un entier et affiche sa valeur lorsqu'il est positif
Algorithme: nombre positif
var a:entier
debut
lire(a)
si a>0 alors
écrire(a)
fin si
fin

Exemple 2:

Ecrire un algorithme qui lit deux caractères et les affiches dans l'ordre alphabétique.

Algorithme: ordre_alphabet
var A,B: caractère
debut
lire(A)
lire(B)
si A<B alors
écrire(A,B)
sinon
écrire(B,A)
fin si
fin

La structure "cas où"

Syntaxe:

cas où
condition 1 : Action 1
condition 2 : action 2
condition n : action n
[ sinon
action n+1 ]
fin cas

Explications:

Les mots suivants sont reconnus par l'ordinateur: condition 1; condition 2; condition n sont des booléens, action 1; action 2; ...; action n. Chaque d'elle peuvent être soit une instruction, soit un ensemble.
On exécute action 1 uniquement lorsque condition 1 uniquement lorsque condition 1 est vraie et on exécute action 2 uniquement lorsque condition 2 est vraie et on exécute action n+1 lorsque condition n+1 est vraie.
Dès qu'une condition est vraie les autres conditions sont fausses.

Exemple 1: ax+b=0

Algorithme: equation-1
var a,b : réel
debut
lire(a)
lire(b)
cas où
a=0 et b=0 : écrire('infinité de solution')
a=0 et b≠0 : écrire('pas de solution')
a#0 : écrire('la solution est :', -b/a)
fin cas
fin

Exemple 2:

Algorithme: Equation_dégré_2
var a, b, c, x1, x1: réel
debut
lire(a)
lire(b)
lire(c)
cas où
a=0 et b≠0 et c≠0 : écrire('la solution est :' -b/c)
a=0 et b=0 et c=0 : écrire('infinité de solution')
a=0 et b=0 et c≠0 : écrire('pas de solution')
a≠0 et b**2-4*a*c<0 : écrire('pas de solution')
a≠0 et b**2-4*a*c=0 : écrire('la solution est :' -b/c)
a≠0 et b**2-4*a*c>0 : écrire('la solution est :', (-b*-D½)/2*a, (-b+D½)/2*a)
fin cas
fin

Exercice

Ecrire un algorithme qui lit 3 nombres et les affiches dans l'ordre croissant. Utilisez la structure "si" et le récrire avec "cas où".


Les structures itératives (répétitions ou boucles)

Encore appelé structure répétition ou boucle, les structures itératives permettent d'effectuer des traitements répétitifs, c'est-à-dire qu'on exécute une action plusieurs fois. Dans une boucle le nombre d'itération peut être connu d'avance ou pas.
Si le nombre d'itération n'est pas connu d'avance, on utilise un prédicat (une condition) pour mettre fin à l'itération. On distingue:

  • La boucle "pour"
  • La boucle "tant que"
  • La boucle "répéter"

La boucle "pour"

On utilise la boucle "pour" lorsqu'on connaît d'avance le nombre d'itération à effectuer, c'est-à-dire lorsqu'on connaît le nombre de fois qu'on doit exécuter une action.
Exemple: Ecrire un algorithme qui permet de lire 10 notes

La syntaxe:

pour compteur = N à M faire [pas]
action
fin pour

Sémantique

Les mots en gras sont reconnus par l'ordinateur.
Compteur est un objet intermédiaire de type entier, il a pour première valeur N. M est la valeur finale de compteur.
pas est un objet intermédiaire de type entier, c'est un objet optionnel qui a pour valeur par défaut "1", et dans ce cas on ne le précise pas.
action peut être soit une instruction, soit un ensemble d'instruction, soit une structure de contrôle.

Comment fonctionner la boucle "pour"

On exécute action pour les valeur de compteur allant de N à M en fonction du pas.
Exemple:
(((((N+pas)+pas)+pas)+pas)+pas)/M

Exemple 1:

Ecrire un algorithme qui permet de lire 5 notes.
Algorithme: lecture_notes
var note: réel
i: entier
debut
pour i=1 à 5 faire
lire(note)
fin pour
fin

Exemple 2:

Ecrire un algorithme qui calcul xN où x est différent de 0 et N supérieur ou égale à 0.
Algorithme: puissance
var p, x: réel
i, n: entier
debut
lire(x)
lire(n)
p←1
pour i=1 à n faire
p←x**p
fin pour
écrire(p)
fin

La boucle "tant que"

On utilise la boucle "tant que" lorsqu'on ne connaît pas d'avance le nombre de répétition à effectuer. Mais on connaît une condition d'arrêt.
Syntaxe:
tant que condition faire
action
fin tant que

Sémantique

Les mots en gras sont reconnus par l'ordinateur.
condition est un booléen
action peut être une instruction, soit un ensemble d'instruction, soit une structure de contrôle.

Fonctionnement

On exécute "action" tant que la condition est vraie, on arrête l'exécution lorsque la condition devient fausse.
Si initialement la condition est fausse on n'exécute pas action.

Exemple 1:

Ecrire un algorithme qui permet d'écrire un nombre strictement positif.
Algorithme: nombre_positif
var N: réel
debut
lire(N)
tant que N<=0 faire
lire(N)
fin tant que
Fin

Exercice 2

Ecrire un algorithme qui permet de lire les nombres compris entre 1 et 3
Algorithme: lecture_en_interval
var n: réel
debut
lire(n)
tant que (n<1) ou (n>3) faire
lire(n)
fin tant que
fin

Tous les problèmes qu'on peut résoudre avec la boucle "pour" peut également se résoudre dans la boucle "tant que"

Boucle "répéter"

On utilise la boucle "répéter" dans les mêmes conditions que la boucle "tant que", c'est-à-dire lorsqu'on ne connaît pas d'avance le nombre de répétition à effectuer.

Syntaxe

répéter
Action
jusqu'à condition

Les mots soulignés sont reconnus par l'ordinateur

Sémantique

action peut être une instruction, un ensemble d'instruction ou une structure de contrôle.
condition est un booléen qui vaut vrai ou faux.

Fonctionnement

On exécute action jusqu'à ce que la condition devienne vraie, autrement dit on exécute action tant que la condition est fausse.

Exemple:

Algorithme: nombre_positif
var N: réel
debut
répéter
lire(N)
jusqu'à N>0
Fin

Exercice:

Ecrire un algorithme qui lit un nombre entier n>1 et qui affiche la table de multiplication correspondante.

correction:

Algorithme: table_de_multiplication
var i, n: entier
debut
répéter
lire(n)
jusqu'à n>1
pour i=1 à 10 faire
écrire(i,'x',n'=',i*n)
fin pour
fin

Consultez gratuitement nos différents cours

  • Eléments de base du langage C (Programmation C)

    Les structures de contrôle   Tous les langages de programmation disposent des structures de contrôle encore appelées instructions de contrôle permettant de réaliser des choix ou des boucles. C'est ainsi qu'on distingue: Les instructions conditionnelles: if... else switch Les instructions réplétives ou de boucle: while, for, do...while La structure conditionnelle if   Syntaxe:   if(condition)   {action1;}   else   {action2;}     Où condition est une expression variante. action1, action2 peuvent être soit une...

    Lire la suite : Eléments de base du langage C

  • Les marchés publics (Droit du travail & TIC)

    Généralités Dans la masse des contrats conclut par l'administration, ceux des contrats qui sont soumis d'un régime de droit publique et qui sont qualifiés contrat administratif et comme tel justiciable devant la juridiction administrative. D'autre part ceux des contrats qui bien que conclus par l'administration sont soumis d'un droit de régime primé, on les appelle alors les contrats privées de l'administration, comme tel il relève alors de la compétence du juge judiciaire (le tribunal de...

    Lire la suite : Les marchés publics

  • Statique analytique (Mécanique appliquée)

    Théorème 1: Solide soumis à l'action de deux forces   Si un solide est soumis à l'action de deux forces pour que ce solide soit en équilibre, il faut : Qui les deux forces aient la même droite d'action. Que les deux forces soient de sens opposés. Que les deux forces aient la même intensité   Théorème 2: Solide soumis à l'action de trois forces non parallèles Un solide est en équilibre sous l'action de trois forces non parallèles si et seulement si: Les trois solides sont coplanaires. Les...

    Lire la suite : Statique analytique