Professional Documents
Culture Documents
Programmation
Structures
Les Algorithmes
Cours & Exercices Corrigs
Edition 2014
KATKOUT Khalid
https://www.facebook.com/groups/2ATRI/
Khalid KATKOUT
2013
I- Dfinition :
Un algorithme peut tre dfini comme une suite fini dopration lmentaire constituant un
schma de calcul pour une rsolution dun problme.
Autrement dit, cest lenchainement des actions ncessaires pour faire lexcution dune tche
dans un ordinateur.
Khalid KATKOUT
2013
Dbut
Somme 0
Pour K = 1 10 avec un pas de 1
Lire x
Somme = Somme + x
Fin Pour
Moyenne Somme / 10
Ecrire Moyenne
Fin
Exercice dapplication (1) :
1- Reprsentez graphiquement le programme des lignes suivantes :
Age >= 18 Majeur
Age < 18 Mineur
Rsum : On peut reprsenter un Algorithme :
- Graphiquement, avec un schma qui sappelle Organigramme.
- Avec un Pseudo Code.
Aujourdhui, la reprsentation graphique est quasiment abandonne.
II- Structure de base dun Algorithme :
- Nom du Programme
- Dclaration des variables
- Dclaration des fonctions
-
Khalid KATKOUT
Il faut noter que lordre dans lequel sont crites les instructions est essentiel dans le rsultat
final.
Exercices dApplication (2) :
1- Quelle sont les valeurs des variables A et B aprs lexcution des instructions suivants :
A < 1
B < A + 3
A < 3
2- Mme questions dexercice 1 pour (A, B, et C) :
A < 5
B < 3
C < A+ B
A < 2
C < C A
3- On Dispose de 3 variables A, B, et C. Ecrire un algorithme transfrant B la valeur de A,
C la valeur de B et A la valeur de C.
3- Lecture/Ecriture :
Considrant le programme suivant :
Variable
A : Entier
Dbut
A < 12^2
Fin
Il permet de calculer le carr de 12.
Si on veut calculer le carr dun autre nombre, il faut rcrire le programme.
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
Pour Variable allant de valeur initial jusqu la valeur final (pas dincrment)
....................................................................
. . . . . . . . . . . . . . . . . . . . . . . . . Bloc dinstruction . . . . . . . . . . . . . . . . . . . . . . . . . . .
....................................................................
Fin Pour
Lincrment est la valeur daugmentation progressive de la variable (compteur). La valeur par
dfaut du pas est 1.
Exemple :
Variable
n, i : Entier
Dbut
Ecrire Donner un nombre
Lire n
Ecrire Les 10 nombres sont :
Pour i allant de n + 1 n + 10
Ecrire i
Fin Pour
Fin
Exercices dapplication (7) :
1- Ecrire un algorithme qui demande un nombre de dpart et qui ensuite crit la table de
multiplication de ce nombre.
Khalid KATKOUT
Dclaration :
Syntaxe :
Tableau
Nom_Du_Tableau (Taille) : Type
Taille : elle dsigne le nombre dlments du tableau. On dit aussi sa taille.
Exemple :
Tableau
Note(5) : rel
Si on veut accder (on lecture ou on criture) une valeur dans un tableau, on utilise la syntaxe
suivante :
Nom_Tableau (Indice)
Exemple :
Note(4) = 10
Remarque :
1- Dans lalgorithme lindice initial du tableau est : 1, alors que pour le langage C en
commencer par 0.
2- La valeur dun indice doit tre un nombre entier.
3- La valeur dun indice doit tre infrieur ou gal la taille du tableau.
Exercice dapplication (8) :
1- Expliquer chacune des instructions ci-dessous :
a- X(2) < -5
Khalid KATKOUT
Khalid KATKOUT
2013
1- Insertion :
Exemple :
On veut insrer (ajouter) une valeur 100 dans la position 5.
Remarque :
1- Taille = Taille + 1
2- i >= Position ; T(i+1) = T(i)
3- T(5) = 100
Cas Particulier : Insertion la fin :
On suppose quon a un tableau Tab(8) dj rempli par les nombres rels. On veut insrer le
nombre 10 dans la dernire case du tableau. On aura lalgorithme suivant :
Tableau
T(8) : Rel
Variables
i : Entier
Dbut
Redim
T(9)
T(9) < 10
Pour i allant de 1 9
Ecrire T(i)
Fin Pour
Fin
Exercice dapplication (9) :
1- Soit T(100) un tableau des rels. Ecrire un algorithme qui permet de
- Remplir le tableau
- Demander la valeur insrer dans le tableau
- Demander la position dinsertion
- donne le tableau rsultat (il affiche le tableau aprs linsertion de la valeur).
2- Suppression :
Exemple :
On veut supprimer la case ayant lindice 6.
Le tableau rsultat :
Remarque : 1- Changement de la taille
2- i >= 6 ; T(i) = T(i+1)
Exercices dapplication (10) :
1- Soit T(100) est un tableau des rels. Ecrire un algorithme qui permet de :
- Remplir le tableau
- Lire la case a supprim
- Affiche le tableau rsultat Tr(99) (Ce tableau contient les mmes valeurs que
T(100) sauf la valeur a supprim).
2- Soit T(100) est un tableau des rels. Ecrire un algorithme qui permet de supprimer la case
qui contient une valeur X (Le tableau est dj rempli, la valeur X existe une seule fois).
3- Soit T(120) est un tableau des rels. Ecrire un algorithme qui permet de supprimer toutes
les cases qui contient une valeur =< 8 (Le tableau est dj rempli).
3- Modification :
On veut modifier la case ayant lindice 6
La nouvelle valeur sera 12
Khalid KATKOUT
2013
Khalid KATKOUT
Khalid KATKOUT
2013
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
2013
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
Khalid KATKOUT
2013
Sinon
Si c<Min alors
Min<=c
Finsi
Finsi
Max<=a
Si b>Max alors
Max<=b
Sinon
Si c>Max alors
Max<=c
Finsi
Finsi
Fin