Vous êtes sur la page 1sur 22

Exercice

• Ecrire un algorithme qui sert de calculatrice de poche, on fait entrer


deux valeurs séparées par l’un des signes d’opérations +, -, *, et /
Donner d’abord la 1ère valeur, le signe de l’opération, (l’opérateur)
puis la 2ème valeur. Ensuite, suivant l’opérateur, calculer le résultat de
l’opération correspondante.
Cas Op vaut

FinCAS
Algorithme ordonner3nombres (TD3 EX5 Qc)

A faire:
• Ordonner trois nombres entiers: A, B, C.
Algorithme ordonner3nombres (TD5 EX5 Qc)
Var A, B, C : entier ;
Début
Ecrire (‘donner les trois nombres à ordonner’) ;
Lire (A, B, C) ;
Si (A<=B) alors Si (B<=C) alors écrire (‘l’ordre est :’, A, B, C) A<B B<C
Sinon si (A<=C) alors écrire (‘l’ordre est :’, A, C, B) A<B C<B A<C
Sinon écrire (‘l’ordre est :’, C, A, B) ; A<B C<B C<A
Fsi ;
Fsi;
Sinon Si (A<=C) alors écrire (‘l’ordre est :’, B, A,C) B<A A<C
Sinon Si (B<=C) alors écrire (‘l’ordre est :’, B, C,A) B<A C<A B<C
Sinon écrire (‘l’ordre est :’, C, B,A) ; B<A C<A C<B
Fsi ;
Fsi
Fsi ;
Fin.
Algorithme ConversionHeureMinSec (TD3 EX6)

Une voiture parcourt une distance de X km avec une vitesse de Y


km/h. Calculer la durée du parcours de la voiture en heure,
minute et seconde.
Exemple : distance=90 km, vitesse=80km/h,
durée =1 heure 7 minutes 30 secondes.
Algorithme ConversionHMS (TD3 EX6)
Var x, y, TotalS, H, M, S, R: entier ;
Début
Ecrire (« donner la distance ») ; Lire(x); 90 km

Ecrire(« donner la vitesse »); Lire (y) ; 80 km/h


TotalS = 90 * 3600 / 80
TotalS=(x*3600/y); = 4050 s

H=TotalS div 3600; /* division entière*/ H = 4050 div 3600 = 1

R=TotalS mod 3600; R = 4050 mod 3600 = 450

M=R div 60; M = 450 div 60 = 7

S=R mod 60; S = 450 mod 60 = 30


1 h 7 min 30 sec
Ecrire (H, « h », M, « min », S, « sec »);
Fin.
Algorithme EquationSecondDegré (TD3 EX7)
Structure itérative (répétitive)
• Intérêt : Faire répéter une même suite d’instructions autant de fois qu’on
veut avec un petit nombre d’instructions.

• Objectif : Exécuter une instruction ou un bloc d’instructions plusieurs fois,


pour des données qui changent à chaque répétition.

• Trois types d’itérations


- Pour
- Tant que
- Répéter
La boucle " pour "
• Lorsque le nombre d’itérations est connu
• Syntaxe:
pour identificateur= expression1 à expression2 faire
séquence d'instructions
fpour
• Identificateur : compteur,
• expression1: 1ère valeur du compteur,
• expression2:dernière valeur du compteur
• La séquence d’instructions s’exécute N fois,
N=expression2-expression1+1
La boucle "pour"
• identificateur: est le compteur qui est initialisé à
expression1
• Le compteur est incrémenté automatiquement à
chaque itération
• L’itération s’arrête lorsque :
Identificateur > expression2
• La valeur de la variable de contrôle ne doit pas être
directement modifiée dans la séquence
d’instructions
La boucle "pour"
 Principe de la boucle Pour
• Met la valeur de expression1 dans identificateur.
• Compare identificateur et expression2.
• Si identificateur <= expression2 alors exécuter les instructions entre
faire et fait.
• Ajouter 1 à identificateur. (au compteur)
• Remonter à l’étape suivante
• Si identificateur > expression2 alors c’est la fin de l’instruction
« pour ».
La boucle " pour "
Exemple
Écrire l’algorithme qui affiche la table de
multiplication d’un nombre n.
La boucle " pour "
lire (n);
Pour i = 1 à 10 faire
écrire (n, ‘ * ’, i, ‘ = ’, n*i)
fpour
La boucle " pour "
La boucle " tant que "
• Répéter une séquence d’instructions aussi longtemps
qu’une condition est VRAIe

<Initialisation>
Tant que condition faire
séquence d’instructions
<Agir sur la condition>
Fait
La boucle " tant que "
• Au moment du premier passage dans la boucle la
condition est évaluée; si elle est vérifiée, la
séquence d’instructions est exécutée
• A l’itération suivante, la condition est de nouveau
évaluée et on répète l’exécution de la séquence
d’instructions tant que la condition est vérifiée.
• Dès que la condition devient fausse, l’exécution du
programme se poursuit à partir de l’instruction qui suit
immédiatement le mot de la fin de la boucle: fait.
La boucle " tant que "
• Remarques :
• Si au premier passage la condition est évaluée à FAUX, le
bloc de la boucle (la séquence d’instructions) n’est
jamais exécuté
• Les variables qui interviennent dans la condition doivent
être initialisées avant d’aborder la boucle
• Si la séquence d’instructions ne change pas la valeur
de la condition, la séquence d’instructions sera
exécutée sans que l’on passe jamais à la suite : on exécute
une boucle infinie
La boucle " tant que "
• Exemple
Écrire l’algorithme qui affiche la table de multiplication
de n.
lire (n);
i := 1;
tant que i <= 10 faire
écrire (n, ‘ * ’, i, ‘ = ’, n*i);
i :=i+1;
fait;
La boucle " tant que "
La boucle " tant que "

Remarque : Toute instruction « pour » peut être


transformée en « tant que », mais pas l’inverse.

Ce n’est pas possible lorsque le nombre d’itérations est


inconnu à l’avance.
Par exemple: compter le nombre de caractères dans un
texte qui se termine par un point.

Vous aimerez peut-être aussi