0% ont trouvé ce document utile (0 vote)
78 vues70 pages

Introduction à l'algorithmique et variables

Le document présente une introduction à l'algorithmique. Il définit notamment les concepts clés d'algorithme, de variable, de type, d'expression et d'affectation. Il décrit également la structure d'un algorithme et les opérateurs sur les types simples.

Transféré par

moharhamsousssi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
78 vues70 pages

Introduction à l'algorithmique et variables

Le document présente une introduction à l'algorithmique. Il définit notamment les concepts clés d'algorithme, de variable, de type, d'expression et d'affectation. Il décrit également la structure d'un algorithme et les opérateurs sur les types simples.

Transféré par

moharhamsousssi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Mohammed V de Rabat

Ecole Supérieure de Technologie de Salé


Département Génie Urbain et Environnement
Licence Professionnelle Génie Civil

Introduction à
l’algorithmique

[Link]@[Link]
Objectifs

● Définition de l’algorithme
● Qu’est ce qu’une variable?
● Qu’est ce qu’un type ?
● Qu’est ce qu’une expression?
● Qu’est ce qu’une affectation?
● Lecture et écriture

[Link]@[Link] 2
La résolution informatique d'un problème

problème algorithme programme

[Link]@[Link] 3
La résolution informatique d'un problème

énoncé
Résultats d'un problème

Exécution du programme Expression de sa


réalisation
(ALGORITHME)

Transformation Programmation
en binaire éxécutable à l’aide d’un langage

Programme objet Programme source

Compilation

[Link]@[Link] 4
Qu’est-ce qu’un algorithme

Données Résultats
Algorithme

● Un algorithme est la description, dans un langage universel


(pseudo-langage), des opérations nécessaires pour résoudre
un problème

[Link]@[Link] 5
Notion de pseudo langage

● L'avantage du pseudo-langage est qu'il permet d'écrire tout algorithme de façon


formelle.
● La phase de programmation se trouvera nécessairement allégée, puisqu'elle se
résumera à adapter l'ensemble des opérations décrites aux spécificités du langage
utilisé.

[Link]@[Link] 6
Élaboration d’un algorithme

● Quatre phases principales:


■ Analyse du problème
■ Expression d'une solution en langage courant
■ Expression d'une solution en pseudo-langage
■ Tests et Vérification de l'adéquation de la solution

[Link]@[Link] 7
Structure d’un algorithme

● Elle est composée d’un entête et d’un corps


● L’entête spécifie:
■ Le nom de l’algorithme (Nom)
■ Son utilité (But)
■ Quelle sont les données « en entrée », c’est-à-dire les éléments qui sont indispensable à
son bon fonctionnement (Entrée)
■ Quelles sont les données en « sortie », c’est-à-dire les éléments calculés, produits par
l’algorithme (Sortie:)

[Link]@[Link] 8
Structure d’un algorithme

● Le corps est composé:


■ Du mot clés début
■ D’une suite d’instructions
■ Du mot clés fin
● Instruction est l’expression dans un pseudo-code ou dans un langage de
programmation d ’un ordre fourni à la machine.
● Les instructions manipulent des objets.
● Chaque objet possède trois qualificatifs : identificateur, type et une valeur

[Link]@[Link] 9
Formalisme

● Exemple de code :
Nom: addDeuxEntiers
But : additionner deux entiers a et b et mettre le résultat dans c
Entrée: a,b : entiers
Sortie: c : entiers
Début
cßa+b
Fin

[Link]@[Link] 10
Qu’est ce qu’une variable

● Une variable est une entité qui contient une information


■ Une variable possède un nom, on parle d’identifiants
■ Une variable possède une valeur
■ Une variable possède un type qui caractérise l’ensemble des valeurs que peut prendre la
variable
● L’ensemble des variables sont stockées dans la mémoire de l’ordinateur

[Link]@[Link] 11
Notions d’identificateur et type

● Les instructions manipulent des objets. Chaque objet possède trois qualificatifs :
identificateur, type et une valeur :
■ L’identificateur : est le nom de l ’objet, une suite de lettres et de chiffres dont le premier
caractère est une lettre. Exemples : Prix_unitaire, Taille, Couleur ...

[Link]@[Link] 12
Notions d’identificateur et type

■ Le type : détermine l ’ensemble des valeurs dans lequel l ’objet prend ses valeurs.
Exemples : entier, réel, caractère, chaîne de caractères
■ La valeur : de l ’objet est un élément quelconque de l’ensemble de définition décrit par
son type. Exemples : Prix_unitaire = 12345,5 ; Taille = 180

[Link]@[Link] 13
Les types simples

● Il y’a deux grande catégories de type simple:


■ Ceux dans le nombre des éléments est fini, les dénombrable
■ Et ceux dans le nombre des éléments est infinies, les indénombrables

■ En mathématiques, un ensemble est dit dénombrable, ou infini dénombrable, lorsque ses


éléments peuvent être listés sans omission ni répétition dans une suite indexée par les
entiers. Certains ensembles infinis, au contraire, contiennent « trop » d'éléments pour
être parcourus complètement par l'infinité des entiers et sont donc dits « non
dénombrables »

[Link]@[Link] 14
Les types simples

● Types simple dénombrable


■ Il y’a le type booléen, les variables ne peuvent prendre que les valeurs VRAI ou FAUX
■ Il y’a les caractères
■ Il y’a les entiers (positifs et négatifs)
■ Il y’a les réels
■ Il y’a les chaînes de caractères, par exemple «cours» ou «algorithmique»

[Link]@[Link] 15
Opérateur, opérande et expression...

● Un opérateur est un symbole d’opération qui permet d’agir sur des variables ou de
faire des calculs
● Un opérande est une entité (variable, constante ou expression…) utilisé par un
opérateur
● Une expression est une combinaison d’opérateur(s), et d’opérandes, elle est évaluée
durant l’exécution de l’algorithme, et possède une valeur et un type

[Link]@[Link] 16
Opérateur, opérande et expression...

● Par exemple dans a + b:


■ a est l’opérande gauche
■ + est l’opérateur
■ b est l’opérande droite
■ a+b est une expression
■ Si par exemple a vaut 2 et b 3, l’expression a+b vaut 5
■ Si par exemple a et b sont des entiers, l’expression a+b est un entier

[Link]@[Link] 17
Opérateur

● Un opérateur peut être unaire ou binaire


■ Unaire s’il n’admet qu’un seul opérande, par exemple l’opérateur non
■ Binaire s’il admet deux opérandes par exemple l’opérateur +

[Link]@[Link] 18
Opérateur

■ Par exemple l’opérateur + ne peut être utilisé qu’avec les types arithmétiques le type
chaîne de caractères
■ On ne peut pas additionner un entier et un caractère
■ Toute fois exceptionnellement dans certains cas on accepte d’utiliser un opérateur avec
deux opérandes de types différents, c’est par exemple le cas avec les types arithmétiques
(2+3.5)

[Link]@[Link] 19
Opérateur

● La signification d’un opérateur peut changer en fonction du type des opérandes


■ Par exemple l’opérateur + avec des entiers aura pour sens l’addition, mais avec de
chaîne de caractères aura pour sens concaténation
q 2+3 vaut 5
q «bonjour» + «tout le monde» vaut «bonjour tout le monde »

[Link]@[Link] 20
Opérateurs sur les types simples

Opérateur notation type des opérandes type du résultat

+ et – unaires +- entier ou réel celui de l'opérande


négation logique NON booléen booléen

Elévation à la ­ entier ou réel entier ou réel


puissance

Multiplication * entier ou réel entier ou réel


Division entière DIV entier entier
Division / réel réel
Reste (modulo) MOD entier entier

Comparaison < <= >= entier ou réel entier ou réel


= ¹ tout type booléen

et logique ET booléen booléen


ou logique OU booléen booléen

[Link]@[Link] 21
Un exemple d’opérateur

● Pour les naturels et les entiers div et mod permettent respectivement de calculer une
division entière et le reste de cette division, par exemple:
■ 13 div 2 vaut 6
■ 13 mod 2 vaut 1

[Link]@[Link] 22
Priorité des opérateurs…

● Tout comme en arithmétique les opérations ont des priorités:


■ Par exemple * et / sont prioritaires sur + et –
● Pour les booléens, la priorité des opérateurs est non, et, ouExclusif et ou

[Link]@[Link] 23
Actions sur les variables

● On ne peut faire que deux choses avec une variable:


■ Obtenir son contenu (regarder le contenu du tiroir). Cela s’effectue simplement en
nommant la variable
■ Affecter un (nouveau) contenu (mettre une nouvelle information dans le tiroir)

[Link]@[Link] 24
Déclaration d’une variable

● Syntaxe
■ variables
■ Nom_variable : type;

[Link]@[Link] 25
Affectation

● L'affectation a pour rôle d'attribuer une valeur, résultat d'une évaluation, à une
variable. La valeur doit être compatible avec le type de la valeur à gauche de
l'affectation. Le symbole utilisé pour l'affectation est ¬

[Link]@[Link] 26
Affectation

● Syntaxe :
■ identifacteur_varaible ¬ valeur;
■ ou identifacteur_varaible : indique le nom de la variable
■ valeur : la valeur à affecter
■ Exemple : prix_total ¬ nb_kg * prix_du_kg
■ Si nb_kg est de type entier et prix_du_kg est de type réel alors prix_total doit être de
type réel.

[Link]@[Link] 27
Lecture et écriture

● Un algorithme peut avoir des interactions avec l’utilisateur


● Il peut afficher un résultat (du texte ou le contenu d’une variable) et demander à
l’utilisateur de saisir une information afin de la stocker dans une variable

[Link]@[Link] 28
Lecture et écriture

● En tant qu’informaticien on raisonne en se mettant « à la place de la machine »,


donc:
■ Pour afficher une information on utilise la commande écrire suivie entre parenthèses de
la chaîne de caractères entre guillemets et/ou des variables de type simple à afficher
séparées par des virgules, par exemple:
q Écrire (‘’la valeur de la variable a est’’,a)

[Link]@[Link] 29
Lecture et écriture

● Pour donner la possibilité à l’utilisateur de saisir une information on utilise la


commande lire suivie entre parenthèses de la variable de type simple qui va recevoir
la valeur saisie par l’utilisateur, par exemple :
■ lire (b)

[Link]@[Link] 30
Ce qu’il faut retenir

● Réaliser un algorithme, c’est exprimer, dans un langage précis (le langage


algorithmique), les règles de traitement d’un problème pour le soumettre à un
ordinateur (par un programme).
● Les données d’un programme sont mémorisées dans des variables qui sont des cases
mémoire.
● Une variable est un contenant, qui contient une et une seule valeur à un moment
donné.

[Link]@[Link] 31
Ce qu’il faut retenir

● Une variable est caractérisée par :


■ un identificateur (son nom)
■ une valeur (qui peut varier au cours du programme, sauf pour les constantes)
■ un type (qui détermine sa taille et les opérations possibles)
● Les instructions de base sont :
■ l'affectation permet de changer la valeur d'une variable.
■ la saisie permet d'assigner à une variable, une valeur entrée au clavier
■ l'affichage permet d'écrire le contenu d'une variable ou d'une expression à l'écran

[Link]@[Link] 32
Exemples de synthèse

● Exemple 1 : Calcul de la surface d’un rectangle


● Analyse :
■ Les trois étapes de cet algorithme :
q 1. Lecture de données, longueur et largeur
q 2. Calcul de la surface, longueur*largeur
q 3. Edition du résultat

[Link]@[Link] 33
Exemples de synthèse

Algorithme surface_rectangle;
Variables
longueur, largeur, surface : réel;
Début
Ecrire (‘’Donner les valeurs de la longueur et la largeur’’);
Lire (longueur, largeur);
surface ¬ longueur*largeur;
Ecrire (‘ la surface du rectangle est : ’, surface);
Fin
[Link]@[Link] 34
Exemples de synthèse

Algorithme surface_rectangle;
Variables
longueur, largeur : réel;
Début
Ecrire (‘’Donner les valeurs de la longueur et la largeur’’);
Lire (longueur, largeur);
Ecrire (‘ la surface du rectangle est : ’, longueur*largeur);
Fin

[Link]@[Link] 35
Exemples de synthèse

Exemple 1 : Calcul de la surface d’un rectangle


DIM longueur, largeur, surface as single
PRINT ’’Calcul de la surface d’un rectangle’’
INPUT ’’Donner la valeur de la longueur’’, longueur
INPUT ’’Donner la valeur de la largeur’’, largeur
surface = longueur*largeur
PRINT ‘’ la surface du rectangle est : ’’, surface
End

[Link]@[Link] 36
Exemples de synthèse

● Exemple 2 : euroVersDirham
● Analyse :
■ Les trois étapes de cet algorithme :
q 1. Lecture des données : VE, tauxC
q 2. Calcul du VD (valeur en dirham)
q 3. Edition du résultat

[Link]@[Link] 37
Exemples de synthèse

● Algorithme :
Algorithme euroVersDirham;
Variables VE, VD, tauxC : réel;
Début
Ecrire ( ‘’Donner les valeurs du VE et de tauxC’’);
Lire (VE, tauxC);
VD ¬ VE*tauxC;
Ecrire (‘ la valeur de VD est : ’,VD);
Fin
[Link]@[Link] 38
Commentaires

● Afin d'améliorer la lisibilité d'un algorithme, on peut utiliser des commentaires. Un


commentaire est une suite de caractères quelconques encadrée par les symboles /* et
*/
● Exemple : /* ceci est un commentaire */

[Link]@[Link] 39
Commentaires

/* le calcul du prix TTC */


Algorithme prix_ttc; /* entête de l ’algorithme */
Variables PH,TVA, PTTC : réel; /* déclaration des variables */
Début /* lecture des variables PH et TVA */
Ecrire (‘’ Donner les valeurs du PH et de la TVA’’);
Lire (PH, TVA);
PTTC ¬ PH*TVA; /* Calcul du PTTC */
Ecrire (‘’ le prix TTC est : ’’,PTTC); /* Edition du résultat */
Fin

[Link]@[Link] 40
Exercice

● Soient n et m deux entiers, écrire l ’algorithme qui permute les valeurs de n et m


(exemple : passer de n=10, m=15 à n=15, m=10)

[Link]@[Link] 41
Exercices
Algorithme permutation;
Variables X,Y : réel ;
Z : réel ; /* variable intermédiaire */
Début
Ecrire (‘ Donner les valeurs de X et de Y’); /* lecture des variables X et Y */
Lire (X, Y);
Ecrire (‘’ Avant permutation : X =’’,X, ‘’ Y=‘’ ,Y); /* permutation des valeurs des variables X et Y */
Z¬X;
X¬Y;
Y¬Z;
Ecrire (‘’ Après permutation : X =’’,X, ‘’ Y=‘‘ ,Y);
Fin

[Link]@[Link] 42
Université Mohammed V de Rabat
Ecole Supérieure de Technologie de Salé
Département Génie Urbain et Environnement
Licence Professionnelle Génie Civil

Chapitre 2 :
Les structures de contrôle

[Link]@[Link]
Objectifs

1. La structure alternative SI … ALORS …


SINON
2. La structure de choix multiple CAS ...
3. Les structures répétitives
– la boucle POUR
– la boucle TANT QUE
– la boucle REPETER

44
Objectifs

1. La structure alternative SI … ALORS …


SINON
2. La structure de choix multiple CAS ...
3. Les structures répétitives
– la boucle POUR
– la boucle TANT QUE
– la boucle REPETER

45
Enchaînement des actions
On utilisera cette structure lorsqu'une
e1 action doit succéder à une autre

T1
T Exemple : Calcul du prix TTC
s1
Algorithme :
Algorithme prix_ttc
e2 Variables PH,TVA, PTTC : réel;
Début
T2
T Ecrire(‘’Donner les valeurs du PH et de la TVA’’);
Lire (PH, TVA);
PTTC ¬ PH*TVA;
s2
Ecrire (‘’ le prix TCC est : ’’,PTTC);
Fin

46
Structure alternative ou conditionnelle

oui non
SI (Condition)
condition
Vraie
?
ALORS T1;
SINON T2;
T1 T2
FSI

suite du programme

La condition désigne une expression booléenne dont


la valeur est VRAI ou FAUX. T1 et T2 désignent
une suite d'instructions (pouvant elles mêmes être
des structures alternatives).

47
Structure alternative ou conditionnelle

Exemple 1 : A et B sont deux entiers. Écrire l ’algorithme qui


retourne la plus grande valeur de A et B ?

ALGORITHME MAXIMUM_DE_DEUX_NOMBRES;
VARIABLES
A, B : ENTIER; /* les deux nombres à comparer */
MAX : ENTIER; /* le plus grand */
DEBUT
ECRIRE(‘’Entrez les valeurs de A et B :’');
LIRE(A, B);
SI (A >= B)
ALORS MAX ¬ A;
SINON MAX ¬ B;
FSI /* Fin de la structure SI */
ECRIRE(‘’le maximum de ‘', A,’' et de ‘',B,’' est : ‘',MAX);
FIN

48
Structure alternative ou conditionnelle

Exemple 2 : Afficher la valeur absolue d ’un entier quelconque N

ALGORITHME Valeur_absolue
VARIABLES
N : ENTIER;
ABS : ENTIER; /* valeur absolue */
DEBUT
ECRIRE(‘’Entrez une valeur entière :’');
LIRE(N);
SI (N >=0)
ALORS ABS ¬ N;
SINON ABS ¬ -N;
FSI
ECRIRE( ’’la valeur absolue de ‘', N,’' est : ‘',ABS);
FIN

49
Structure alternative ou conditionnelle

Exercice 1 : L'utilisateur saisit un caractère, écrire l ’algorithme


qui teste s'il s'agit d'une lettre majuscule, si oui il renvoie cette
lettre en minuscule, sinon il renvoie un message d'erreur

Exercice 2: on veut résoudre, dans l’ensemble des nombres réels,


une équation du second degré à coefficients réels.
a, b et c sont des réels non nuls, écrire l ’algorithme qui retourne
les racines réelles de l équation suivante : ax2 + bx +c = 0

50
Objectifs

1. La structure alternative SI … ALORS …


SINON
2. La structure de choix multiple CAS ...
3. Les structures répétitives
– la boucle POUR
– la boucle TANT QUE
– la boucle REPETER

[Link]@[Link] 51
Structure alternative généralisée

Expression

T1 T2 T3 T4

Suivant la valeur de l'expression, un des traitements


T1, T2, T3 ou T4 est exécuté.
52
Structure alternative généralisée

En pseudo-langage, on écrira
CAS (expression)
valeur1 : T1;
valeur2 : DEBUT
T21;
T22;
FIN
valeur3 : T3;
valeur4 : T4;
AUTRE T_autre;
FIN CAS

53
Structure alternative généralisée
Exemple : On désire calculer le salaire net (SN) d'un employé en
tenant compte du nombre de personnes à charge. Le tableau des
déductions par rapport au nombre de personnes à charge est le suivant :

Nombre de Déductions du salaire


personnes à charge brut (SB)
0 20%
1 18%
2 15%
3 13%
4 ou 5 10%
6 et plus 08%

Ecrire l ’algorithme qui lit les données suivantes :


• le nombre de personnes à charge (pers_ch de type entier)
• le nombre d'heures de travail (nb_heur de type entier)
• le taux horaire (taux de type réel)
puis calcule le salaire net ?
54
Structure alternative généralisée
ALGORITHME exemple1_CAS
VARIABLES
SN, SB, Taux : réel;
nb_heur, pers_ch : entier;
déduction : réel;

DEBUT
ECRIRE( ’’le nombre de pers_ch ‘'); LIRE (pers_ch);
ECRIRE( ’’le nombre d heures ‘’); LIRE (nb_heur);
ECRIRE( ’’le taux horaire ‘'); LIRE (taux);
SB ¬ taux*nb_heur;
CAS (pers_ch)
0 : déduction ¬ 0.20*SB;
1 : déduction ¬ 0.18*SB;
2 : déduction ¬ 0.15*SB;
3 : déduction ¬ 0.13*SB;
4,5 : déduction ¬ 0.10*SB;
AUTRE déduction ¬ 0.08*SB;
FIN CAS
SN ¬ SB - déduction
ECRIRE(‘’ le salaire net est : ‘’ ,SN);
FIN
55
Structure alternative généralisée

Exercice : Écrire l ’algorithme qui lit un caractère et vérifie


s ’il est une lettre, un chiffre ou un caractère spécial.

ALGORITHME exemple2_CAS
VARIABLES
C : CARACTERE;
DEBUT
ECRIRE('Entrez un caractère :');
LIRE(C) ;
CAS (C)
‘ a ’ … ‘ z ’ , ‘ A ’ … ‘ Z ’ : ECRIRE(C , ’ est une lettre ’);
‘0’…‘9’ : ECRIRE(C , ’ est un chiffre ’);
AURTE : ECRIRE(C , ’ est un caractère spécial ’);
FIN CAS
FIN

56
Objectifs

1. La structure alternative SI … ALORS …


SINON
2. La structure de choix multiple CAS ...
3. Les structures répétitives
– la boucle POUR
– la boucle TANT QUE
– la boucle REPETER

[Link]@[Link] 57
Structures itératives

La notion d'itération est l'une des notions fondamentales de


l'algorithmique. Elle est utilisée lorsque l'on doit exercer
plusieurs fois le même traitement sur un même objet.

initialisation

Il existe trois structures de condition

répétition :
Vraie ?
non
oui

1. La boucle POUR bloc d'instructions

2. La boucle TANT QUE


3. La boucle REPETER
modification
suite du programme

58
La boucle POUR
Pour variable_contrôle = valeur_min jusque valeur_max Faire
Début
Bloc d ’instructions;
Fin

Ou

• variable_de_contrôle est la variable de contrôle


(compteur)
• valeur_min et valeur_max indique respectivement
la valeur minimale est la valeur maximale

59
La boucle POUR

Exemple 1 : Soit n un entier, afficher les valeurs 1,


2, …, n

ALGORITHME exemple1_POUR
VARIABLES
n : ENTIER;
i : ENTIER; /* variable de contrôle */
DEBUT
ECRIRE(‘’Entrez une valeur entière :’');
LIRE(n);
POUR i=1 jusque n FAIRE
début
ECRIRE(i);
Fin

FIN

60
La boucle POUR

Exemple 2 : Calculer n! (n!= 1*2*3* … *n)

ALGORITHME exemple2_POUR
VARIABLES
n, fac : ENTIER;
i : ENTIER; /* variable de contrôle */
DEBUT
ECRIRE('Entrez une valeur entière :');
LIRE(n);
fac ¬1
POUR i=1 jusque n FAIRE
début
fac ¬fac*i
Fin
ECRIRE( ’factoriel de ', n,' est : ',fac);
FIN

61
La boucle Tant que
TANT QUE Condition FAIRE
DEBUT e

T1; VRAI
FIN Condition

Lorsque la condition a pour valeur FAUX


VRAI, on exécute le traitement T1 T1
puis on revient tester la condition.
Il est donc nécessaire que l'action T1
s
modifie la condition sinon l'itération
ne s'arrêtera pas.
Lorsque la condition a pour valeur
FAUX, le traitement séquentiel
continue. L'itération est terminée

62
La boucle Tant que
Exemple : Une suite S de nombres non nuls est saisie au clavier.
La fin de S est marquée par un nombre nul. Écrire l’algorithme qui
ALGORITHME
affiche exemple_Tant-que
les variables (Pos) et (Neg) représentant respectivement le
nombreVARIABLES
de valeurs positives et le nombre de valeurs négatives
pos, neg ,n : ENTIER;
/* i : ENTIER; variable de contrôle */
DEBUT
pos ¬ 0 ; neg ¬ 0
ECRIRE(‘’Entrez une valeur entière : (0 pour terminer)‘’);
LIRE(n);
TANT QUE (n<>0) FAIRE
début /* début de tant que */
SI n<0 ALORS neg ¬neg +1
SINON pos ¬pos +1
ECRIRE(‘’Entrez une valeur entière : (0 pour terminer)‘’);
LIRE(n);
fin /* fin de tant que */
… /* afficher les valeurs de Pos et neg */
FIN

63
La boucle REPETER

REPETER
Bloc d ’instructions;
JUSQU’A CE QUE (expression soit Vraie)

b lo c d '
in s tru c tio n s

O ui
c o n d itio n
N on v ra ie

s u ite d u p ro g ra m m e

64
Exercices
Exercice 1: Calcul de la somme des n premiers entiers positifs
Calculer la somme des n premiers entiers positifs, par additions successives des
entiers : Somme = 1+2+…+N.
/* La structure Pour */
ALGORITHME Somme_v1
VARIABLES
somme ,N : ENTIER;
i : ENTIER; /* variable de contrôle */
DEBUT
Somme ¬ 0;
ECRIRE('Entrez la valeur de N');
LIRE(N);
Pour i=1 jusqu ’a N Faire
début /* début de Pour */
Somme ¬ Somme +i;
fin /* fin de Pour */
ECRIRE(‘ Somme = ’, Somme);
FIN

65
Exercices

/* La structure Tant que */


ALGORITHME Somme_v2
VARIABLES
somme ,N : ENTIER;
i : ENTIER; /* variable de contrôle */
DEBUT
Somme ¬ 0 ;
ECRIRE('Entrez la valeur de N');
LIRE(N);
i=1;
Tant que (i<=N) Faire
début /* début de Tant que */
Somme ¬ Somme +i;
i=i+1;
fin /* fin de Tant que */
ECRIRE(‘ Somme = ’, Somme);
FIN

66
Exercices

/* La structure Répéter */
ALGORITHME Somme_v2
VARIABLES
somme ,N : ENTIER;
i : ENTIER; /* variable de contrôle */
DEBUT
Somme ¬ 0 ;
ECRIRE('Entrez la valeur de N');
LIRE(N);
i=1;
Répéter
Somme ¬ Somme +i;
i=i+1;
Jusque ’a ce que (i>N)
ECRIRE(‘ Somme = ’, Somme);
FIN

67
Exercices
Exercice 1
Écrire l'algorithme qui calcule le carré d'un entier saisi au
clavier.

Exercice 2
Écrire l'algorithme qui saisie un prix unitaire, une quantité et
qui calcule le prix total.

Exercice 3
Écrire l'algorithme qui lit deux nombres et les imprime dans
l’ordre croissant de leurs valeurs.

Exercice 4
Soient trois nombres x, y et z. Écrire un algorithme qui
détermine et imprime le plus grand des trois.
68
Exercices

A partir d’un nombre lu en données, on détermine


un montant net par application d’une remise de :

§ 1.5 % si le montant est compris entre 2000 et


5000 DH
§ 2.5 % si le montant est compris entre 5001 et
10000 DH
§ 3 % si le montant excède 10000 DH

Écrire l'algorithme qui lit en entrée le montant et


fournit en sortie la remise net.

69
Exercices
Exercice 6
Donner la trace de l ’algorithme suivant :
Variables I, J : entier ;
Début
I ¬ 1 ;
Ecrire(‘Itération ‘,I);
Répéter
J ¬ 1 ;
Tant que (J<4) Faire Début de tant que
Ecrire(‘Itération ‘,J); J ¬ J+1 ;
Ecrire(I, J) ;
Fin tant que
I ¬ I+1 ;
Jusqu’à (I=5) ;
Fin
70

Vous aimerez peut-être aussi