Institut de Formation aux Métiers de l’industrie Automobile. Algorithme Par : Mohamed JAFFAL
Preview:
Citation preview
- Page 1
- Institut de Formation aux Mtiers de lindustrie Automobile.
Algorithme Par : Mohamed JAFFAL.
- Page 2
- Introduction Nous voulons prparer une recette dans la cuisine,
nous aurons besoin : Des ingrdients et du matriels (ces sont des
entres ). Dune mthode de prparation ou dexcution. Dun certain
temps. Nous aurons finalement la recette prte detre utilise. D.
Systmes Automatiss. Mohamed JAFFAL 2
- Page 3
- Introduction Imaginons maintenant, un distributeur de boissons
qui peut livr deux types de boissons, du lait chaud avec un prix de
3DH, et du lait au caf avec 5DH. Si un utilisateur a fait entrer
une somme de pices de 5DH, ou plus, il a la possibilit de choisir
entre les deux boissons, le reste va tre retourner, sil a fait
entrer une somme de pices dargent entre 3DH et 5DH (strictement
inferieur 5DH), il na quun seul choix. Le troisime cas, et celui
quand lutilisateur utilise une somme de pices dargent qui ne dpasse
pas les 3DH. Ce quon cherche, comment le distributeur va pouvoir se
comporter dans les trois cas. 3 D. Systmes Automatiss. Mohamed
JAFFAL
- Page 4
- Introduction Pour rsoudre ce problme, il faut programmer le
distributeur. Cependant, et avant de pouvoir le programmer, il faut
savoir lenchainement des actions et ractions quil va excuter dans
chaque cas. Lenchainement de ces actions et ractions, et sa
rdaction dans un cahier des charges qui sappelle algorithme. 4 D.
Systmes Automatiss. Mohamed JAFFAL
- Page 5
- Dfinition Un algorithme est la description univoque dune mthode
effective pour rsoudre un problme, exprim laide dune suite
dinstruction lmentaires. Un algorithme est une suite ordonne
dinstructions qui indique la dmarche suivre pour rsoudre une srie
de problmes quivalents. 5 D. Systmes Automatiss. Mohamed
JAFFAL
- Page 6
- Dfinition La science qui tudie les algorithmes sappelle
lalgorithmique. Lutilisation de la notion dalgorithme est largement
utilis aujourdhui dans des nombreuses applications telles que la
planifications et loptimisation des ressources et matriels, 6 D.
Systmes Automatiss. Mohamed JAFFAL
- Page 7
- Dfinition Un algorithme donn peut tre correct, il va rsoudre le
problme pour lequel est conu. Comme il peut tre non correct, dans
ca cas, une modification dans lune de ses instructions doit avoir
lieu pour dpasser le problme rencontr. Pour un problme donn, il
peut y avoir plusieurs algorithmes diffrents, ou aucun ! 7 D.
Systmes Automatiss. Mohamed JAFFAL
- Page 8
- Dfinition Lorsqu'il existe plusieurs algorithmes, on peut les
comparer selon plusieurs critres : les ides sous-jacentes, leur
structure (rcursif / itratif, glouton, prog. dynamique, diviser
pour rgner,... ). les structures de donnes utilises. La complexit
algorithmique. 8 D. Systmes Automatiss. Mohamed JAFFAL
- Page 9
- Dfinition Complexit dun algorithme : Deux types de complexit
pour un algorithme : Complexit en temps. Complexit en espace
mmoire. 9 D. Systmes Automatiss. Mohamed JAFFAL
- Page 10
- Dfinition Efficacit d un algorithme : Plusieurs critres pour la
mesure notamment : Sa dure de calcul. Sa consommation de mmoire RAM
(toutes les instructions ont le mme temps dexcution). 10 D. Systmes
Automatiss. Mohamed JAFFAL
- Page 11
- Structure gnrale dun algorithme Variables Dclaration des
variables Dbut Liste des Instructions ou programme principal fin 11
D. Systmes Automatiss. Mohamed JAFFAL
- Page 12
- Exemple simple : Variables Entier a Entier b Entier c Dbut
Lire(a) Lire(b) C a.b Affiche(c) fin 12 D. Systmes Automatiss.
Mohamed JAFFAL
- Page 13
- Exemple simple : Ce programme calcul le produit de deux
variables a et b de type entier, saisis au clavier, aprs avoir lire
ses valeurs, puis affiche le rsultat qui est attribu une troisime
variable c de mme type entier. 13 D. Systmes Automatiss. Mohamed
JAFFAL
- Page 14
- Exercices dapplication Exercice 01 : Quelles seront les valeurs
des variables A et B aprs excution des instructions suivantes ?
Variables A, B en Entier Dbut A 1 B A + 3 A 3 Fin 14 D. Systmes
Automatiss. Mohamed JAFFAL
- Page 15
- Exercices dapplication Exercice 02 : Quelles seront les valeurs
des variables A, B et C aprs excution des instructions suivantes ?
Variables A, B, C en Entier Dbut A 5 B 3 C A + B A 2 C B A Fin 15
D. Systmes Automatiss. Mohamed JAFFAL
- Page 16
- Exercices dapplication Exercice 03 : Quelles seront les valeurs
des variables A et B aprs excution des instructions suivantes ?
Variables A, B en Entier Dbut A 5 B A + 4 A A + 1 B A 4 Fin 16 D.
Systmes Automatiss. Mohamed JAFFAL
- Page 17
- Exercices dapplication Exercice 04 : Quelles seront les valeurs
des variables A, B et C aprs excution des instructions suivantes ?
Variables A, B, C en Entier Dbut A 3 B 10 C A + B B A + B A C Fin
17 D. Systmes Automatiss. Mohamed JAFFAL
- Page 18
- Exercices dapplication Exercice 05 : Quelles seront les valeurs
des variables A et B aprs excution des instructions suivantes ?
Variables A, B en Entier Dbut A 5 B 2 A B B A Fin Moralit : les
deux dernires instructions permettent-elles dchanger les deux
valeurs de B et A ? Si lon inverse les deux dernires instructions,
cela change-t-il quelque chose ? 18 D. Systmes Automatiss. Mohamed
JAFFAL
- Page 19
- Exercices dapplication Exercice 06 : Une variante du prcdent :
on dispose de trois variables A, B et C. Ecrivez un algorithme
transfrant B la valeur de A, C la valeur de B et A la valeur de C
(toujours quels que soient les contenus pralables de ces
variables). 19 D. Systmes Automatiss. Mohamed JAFFAL
- Page 20
- Exercices dapplication Exercice 07 : Ecrire un programme qui
demande un nombre lutilisateur, puis qui calcule et affiche le carr
de ce nombre. 20 D. Systmes Automatiss. Mohamed JAFFAL
- Page 21
- Exercices dapplication Exercice 08 : Quest ce quil affiche le
programme suivant : Variables Rel a Entier n Entier parcours Rel
resultat Dbut Lire(a) Lire(n) resultat a pour parcours allant de 1
n resultat resultat.a fin pour Affiche(resultat) fin 21 D. Systmes
Automatiss. Mohamed JAFFAL
- Page 22
- Exercices dapplication Exercice 09 : Ecrire un programme qui
lit le prix HT dun article, le nombre darticles et le taux de TVA,
et qui fournit le prix total TTC correspondant. Faire en sorte que
des libells apparaissent clairement. 22 D. Systmes Automatiss.
Mohamed JAFFAL
- Page 23
- Exercices dapplication Exercice 10 : Ecrire un algorithme qui
demande un nombre lutilisateur, et linforme ensuite si ce nombre
est positif ou ngatif (on laisse de ct le cas o le nombre vaut
zro). 23 D. Systmes Automatiss. Mohamed JAFFAL
- Page 24
- Exercices dapplication Exercice 11 : Un magasin de reprographie
facture 0,5dh les dix premires photocopies, 0,4dh les vingt
suivantes et 0,25dh au-del. Ecrivez un algorithme qui demande
lutilisateur le nombre de photocopies effectues et qui affiche la
facture correspondante. 24 D. Systmes Automatiss. Mohamed
JAFFAL
- Page 25
- Exercices dapplication Exercice 12 : Ecrire un algorithme qui
demande un nombre compris entre 10 et 20, jusqu ce que la rponse
convienne. En cas de rponse suprieure 20, on fera apparatre un
message : Plus petit ! , et inversement, Plus grand ! si le nombre
est infrieur 10. 25 D. Systmes Automatiss. Mohamed JAFFAL
- Page 26
- Exercices dapplication Exercice 13 : Ecrire un algorithme qui
demande un nombre de dpart, et qui calcule sa factorielle. NB : la
factorielle de 8, note 8 !, vaut 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8. 26
D. Systmes Automatiss. Mohamed JAFFAL
- Page 27
- Exercices dapplication Exercice 14 : Que produit lalgorithme
suivant ? Tableau Nb(5) en Entier Variable i en Entier Dbut Pour i
0 5 Nb(i) i * i i suivant Pour i 0 5 Ecrire Nb(i) i suivant Fin
Peut-on simplifier cet algorithme avec le mme rsultat ? 27 D.
Systmes Automatiss. Mohamed JAFFAL
- Page 28
- Exercices dapplication Exercice 15 : Que produit lalgorithme
suivant ? Variables Rel a Entier n Entier parcours Rel resultat Rel
temps Dbut Lire(a) Lire(n) temps 1 resultat a 28 D. Systmes
Automatiss. Mohamed JAFFAL
- Page 29
- Exercices dapplication 29 D. Systmes Automatiss. Mohamed
JAFFAL