Introduction de l’algorithmique GREM 2009/2010 1/6
ALGORITHMES
Première partie : découverte et vocabulaire
D€finition :Un algorithme est une succession d€instructions encha‚ner dans un ordre bien
prƒcis, permettant de rƒsoudre un probl„me de fa…on systƒmatique. Il est ƒcrit dans un
langage comprƒhensible tous.
Exemples :
1. vie courante
2. maths
Construction d’un algorithme :
On souhaite construire un algorithme partir d€un probl„me posƒ. On dƒcompose ce
probl„me en une succession de probl„mes plus simples, jusqu€• obtenir une succession
d€instructions ƒlƒmentaires.
Ces instructions ƒlƒmentaires peuvent †tre :
entrer une valeur, afficher une valeur, affecter une valeur ;
Additionner, soustraire, multiplier, diviser deux valeurs ;
Comparer deux valeurs.
Pour relier les diffƒrentes instructions ƒlƒmentaires, on peut utiliser :
Une condition : Si alors
Une boucle, c€est-•-dire une rƒpƒtition d€un certain nombre d€actions :
Tant que faire, Pour faire
Premiers exercices sur les algorithmes
Exercice 1 : QCM (Donner toutes les bonnes rƒponses)
On donne l€algorithme suivant :
Variables :
x, a, b: rƒels ;
Dƒbut
Entrer (x) ;
2
x a
 
;
ba 4
2;
Afficher (b) ;
Fin.
1. Le nombre obtenu avec l€entrƒe 2 est :a) 0 ; b) ‡4;c) 12.
2. Le nombre obtenu avec l€entrƒe 1 est : a) 5 ; b) 2 ; c) 13.
3. Si l€on veut obtenir 0, on peut entrer : a) 0 ; b) ‡2;c) - 4.
4. Si l€on veut obtenir 4, on peut entrer :a) 0 ; b) 2 ; c) - 2.
5. L€expression algƒbrique de la fonction fdƒfinie sur
par cet algorithme est :
a)
2
2xxf ;b)
42 2xxf ;c)
xxxf 4
2.
Introduction de l’algorithmique GREM 2009/2010 2/6
Exercice 2:
On donne l€algorithme suivant :
Variables :
x, a, b, c: entiers ;
Dƒbut
Entrer (x) ;
ax
2;
bx
6;cba
9
Afficher (c) ;
Fin.
1. Dƒterminer les images de 1, 4 puis ‡ 2 par cet algorithme.
2. On peut ƒcrire les rƒsultats prƒcƒdents sous la forme d€un carrƒ. En est-il toujours ainsi ?
3. On souhaite obtenir 4 comme rƒsultat. Quel(s) nombre(s) peut-on choisir comme entrƒe ?
A travers ces deux exercices, on dƒcouvre quelques instructions ƒlƒmentaires.
AFFECTATION :Il s€agit d€affecter une valeur une variable, valeur qui peut †tre de
plusieurs types : numƒrique (entier ou rƒel), alphanumƒrique (texte), boolƒen (vrai ou faux).
Syntaxe : var
val On affecte la valeur val la variable var.
Exemples : a
2: on affecte la valeur 2 la variable a.
ba
3: on affecte la variable ble contenu de la variable aauquel on ajoute
3. Ici on affecte donc 5.
ENTRER UNE VALEUR : Au moment de l€exƒcution de l€algorithme, on affecte une valeur
une variable. Lors du fonctionnement de l€algorithme, celui-ci s€arr†te cette instruction et
ne poursuit que lorsque l€utilisateur a entrƒ une valeur.
Syntaxe :
varEntrer . Lorsque l€utilisateur a entrƒ une valeur, celle-ci est stockƒe dans la
variable var.
Exemple :
baEntrer ,. A l€exƒcution de l€algorithme, l€utilisateur saisira deux valeurs. La
premi„re sera stockƒe dans la variable aet la deuxi„me dans la variable b.
AFFICHAGE D’UNE VALEUR :Il s€agit d€afficher la valeur d€une variable.
Syntaxe :
varAfficher .
Pour afficher plusieurs variables, on les sƒpare par des virgules. On peut aussi afficher du
texte, que l€on place alors entre guillemets.
Exemple :Afficher la valeur de xest , x).
Introduction de l’algorithmique GREM 2009/2010 3/6
Deuxi€me partie : r•daction d’un algorithme
Exercice : Sur le mod„le des exercices prƒcƒdents, ƒcrire un algorithme permettant de
calculer la moyenne arithmƒtique des notes de deux devoirs.
Voici quelques r„gles permettant de rƒdiger un algorithme de fa…on comprƒhensible pour
tout lecteur.
Un algorithme comporte deux parties :
La dƒclaration des variables ;
Le corps de l€algorithme.
R„gles pour rƒdiger la dƒclaration des variables :
La dƒclaration des variables est introduite par le terme ˆVariables
Les variables utilisƒes sont accompagnƒes par leur type (entier, rƒel, texte, liste,
boolƒenŠ).
R„gles pour rƒdiger le corps de l€algorithme :
Le corps de l€algorithme comprend la suite des instructions exƒcuter. Celui-ci
dƒbute par ˆDƒbut et se termine par ˆFin ‰.
CONSEIL : une fois l€algorithme ƒcrit, on le teste la main en le faisant fonctionner avec
quelques valeurs. On se pose deux questions :
Le rƒsultat est-il bien celui que l€on attend ?
L€algorithme s€arr†te-t-il ?
Applications :
1. Ecrire un algorithme permettant de calculer l€image d€un rƒel par la fonction fdƒfinie sur
par
5
2xxf .
2. Ecrire un algorithme pour le jeu suivant :
Pensez deux nombres.
Donnez moi leur somme.
Donnez moi leur diffƒrence.
Les deux nombres auxquels vous avez pensƒ sont Š
Prolongement : les algorithmes prƒcƒdents peuvent †tre traduit dans un langage de
programmation afin de les exƒcuter sur des calculatrices ou un ordinateur. La traduction
dans un langage de programmation ne pose, en gƒnƒral, pas de probl„mes, mais il faut †tre
tr„s rigoureux car une erreur, aussi petite soit elle emp†che le programme de s€exƒcuter.
Le groupe TICE travaille actuellement sur ce passage des algorithmes aux programmes
ƒcrits dans diffƒrents langages. Il est important de faire sentir la diffƒrence entre algorithme
et programme aux ƒl„ves.
Introduction de l’algorithmique GREM 2009/2010 4/6
Troisième partie :outils pour construire un algorithme
1. Instructions conditionnelles
Condition Si alors
Syntaxe :Si proposition alors ActionSi ;FinSi
proposition est de type boolƒen (vrai ou faux) ;
ActionSi est une instruction ƒlƒmentaire ou une succession d€instructions
ƒlƒmentaires.
Si la proposition est vraie, l€algorithme effectue ActionSi puisse passe la suite de
l€algorithme. Si la proposition est fausse, il passe directement la suite de l€algorithme.
Condition Si alorssinon
Exemple :construire un algorithme donnant le signe du nombre entrƒ.
Syntaxe :Si proposition alors ActionSi ;FinSi
proposition est de type boolƒen (vrai ou faux) ;
ActionSi et ActionSinon sont des instructions ou des successions d€instructions
ƒlƒmentaires.
Si la proposition est vraie, l€algorithme effectue ActionSi.Dans le cas contraire, il effectue
ActionSinon. Puis il passe la suite de l€algorithme.
Algorithme Signe
Variables :
x:réels ;
Dƒbut
Entrer (x) ;
Si
0xalors
Afficher (x, ˆest positif ‰) ;
sinon Afficher(x, ˆ est nƒgatif ‰) ;
FinSi ;
Fin.
Application :Construire un algorithme dans lequel on rentre deux notes, on calcule la
moyenne, on affiche ˆFƒlicitations ! ‰ si la moyenne est supƒrieure 16 et dans tous les
cas, on affiche la moyenne.
2. Boucles et it€rations
Boucle Pour faire
Syntaxe :
Pour iallant de début fin faire
Actionsi;
FinPour.
début et fin sont deux entiers ;
iest une variable enti„re.
Actionsiest une instruction ou une succession d€instructions ƒlƒmentaires,
pouvant dƒpendre de i(ou non).
Vocabulaire : iest le compteur, la suite d€actions Actionsis€appelle suite d€itƒrations.
Introduction de l’algorithmique GREM 2009/2010 5/6
Exemple :Faire la somme des npremiers entiers naturels non nuls
Algorithme Somme Entiers
Variables :
n, i, S:entiers;
Dƒbut
Entrer (n) ;
S
0;
Pour iallant de 1 nfaire SiS
;
FinPour ;
Afficher (S)
Fin.
Remarques :
L€affectation S
0permet d€initialiser la valeur de S.
L€algorithme calcule de proche en proche la somme et l€affecte S.
Boucle Tant que faire
Syntaxe :
Tant que proposition faire
ActionsTantQue ;
FinTantQue ;
proposition est de type boolƒen (vrai ou faux) ;
ActionsTantQue est une instruction ou une succession d€instructions ƒlƒmentaires.
D€roulement de la boucle
On teste la proposition. Si elle est vraie, on effectue ActionsTantQue. Puis on teste de
nouveau la proposition. Si elle est encore vraie, on effectue de nouveau ActionsTantQue. Et
ainsi de suite jusquۥ ce que la proposition soit fausse, auquel cas on passe la suite de
l€algorithme.
Vocabulaire : la suite d€instructions ActionsTantQue s€appelle suite d€itƒrations.
Remarques :
Le nombre d€itƒrations est a priori inconnu.
Il est indispensable qu€• un moment donnƒ, l€une des instructions de
ActionsTantQue rende proposition fausse, sinon l€algorithme ne s€arr†te jamais.
Exemple :Faire la somme des npremiers entiers naturels non nuls (2„me mƒthode)
Algorithme Somme Entiers bis
Variables :
n, i, S:entiers ;
Dƒbut
Entrer (n) ;
S
0;
i
1;
TantQue
n
i
faire
SiS
;
ii
1;
FinTantQue ;
Afficher (S)
Fin.
1 / 6 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!