Académique Documents
Professionnel Documents
Culture Documents
Introduction A L'algorithme
Introduction A L'algorithme
Un algorithme
Le mot est une
algorithme vientsuite
du nom d’instructions
finied’un que l’on applique à un nombre
grand mathématicien
fini de données
Person: Muhammad dans Ibn Mūsāprécis
un ordre pour arrivergénéralement
al-Khuwārizmī, à un résultat.
simplifié en Al-Khwarizmi, né dans les années 780,
originaire de Khiva
L’algorithmique est ladans la région
science du Khwarezm
qui étudie qui lui a
les algorithmes.
donné son nom, dans l'actuel Ouzbékistan, mort vers 850 à
Elle s’intéresse à l’art de construire des algorithmes ainsi qu’a caractériser
Bagdad.
leur validité, leur robustesse, leur réutilisabilité, leur complexité ou leur
Il est également le père l’algèbre.
efficacité.
07/11/2018 3
1. Qu’est ce qu’un algorithme ?
Exemples
a) Dans la vie de tout les jours b) Une recette de cuisine
1- Le réveil sonne
2- Je me lève c) Un programme de calcul
3- J’enlève mon pyjama 1- Choisir un nombre
4- Je me douche 2- Lui ajouter 5
5- Je m’habille 3- Multiplier la somme obtenue par
6- Je prépare le café le nombre choisi
7- Je déjeune 4- Ajouter 4 à ce produit
8- Je prend mes affaires 5- Ecrire le résultat
9- J’ouvre la porte
10- Je sors
11- Je referme la porte
07/11/2018 4
1. Qu’est ce qu’un algorithme ?
Exemples
d) Trouver son chemin
Extrait d’un dialogue entre un touriste égaré et un autochtone.
– Pourriez-vous m’indiquer le chemin de la gare, s’il vous plait ?
– Oui bien sûr : vous allez tout droit jusqu’au prochain carrefour, vous prenez à gauche au carrefour et
ensuite la troisième à droite, et vous verrez la gare juste en face de vous.
– Merci.
Dans ce dialogue, la réponse de l’autochtone est la description d’une suite ordonnée d’instructions
(allez tout droit, prenez à gauche, prenez la troisième à droite) qui manipulent des
données (carrefour, rues) pour réaliser la tâche désirée (aller à la gare). Ici encore, chacun a
déjà été confronté à ce genre de situation et donc, consciemment ou non, a déjà construit un
algorithme dans sa tête (ie. définir la suite d’instructions pour réaliser une tâche). Mais quand
on définit un algorithme, celui-ci ne doit contenir que des instructions compréhensibles par celui
07/11/2018 7
1.1. A quoi servent les variable?
Illustration
Un ordinateur ou une calculatrice qui exécute un algorithme doit stocker les
données entrées par l’utilisateur et les résultats de ses calculs dans un endroit
de sa mémoire. C’est ce que l’on appellera une Variable.
Elle associe un nom à une valeur qui peut éventuellement varier au cours
du temps.
Valeur 2 Valeur 3 Valeur 5
07/11/2018 9
1.2. Déclaration des variable?
• Par convention, on écrira l’essentiel des noms de variable en caractères minuscules (y compris la première
lettre). On n’utilisera les majuscules qu’à l’intérieur même du nom pour en augmenter éventuellement la
lisibilité.
NOTE:
1. Une constante est une variable dont la valeur associée ne varie pas au cours du programme. Nous
pourrons l’écrire entièrement en majuscule, par exemple PI= 3.14.
NOTE:
2. Pour déclarer une variable on utilise le mot clé Variable ou Var.
Exemple: Désigner les noms de variables corrects
07/11/2018 10
1.2.1 Les types de base
Il existe plusieurs type de variables, mais nous considérons cinq types de base :
07/11/2018 11
1.3. L’instruction d’affectation
1.3.1 Syntaxe, signification et ordre
L’affectation est l’opération qui consiste à attribuer une valeur à une variable.
L’instruction d’affectation est notée := ou
Valeur 25
Variable := Valeur ou Variable Valeur
Exemple : a 25
b:= -318
PI := 3,14 Variable a
N 59, 4*10 e -6
ville ‘m’
module ‟informatique”
phrase ‟elle marche vite”
existe := VRAI
07/11/2018 13
Exercices d’application
Énoncé des Exercices
Exercice 1.1
Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
Variables A, B en Entier
Début
A←1
B←A+3
A←3
Fin
07/11/2018 14
Exercices d’application
Énoncé des Exercices
Exercice 1.2
Quelles seront les valeurs des variables A, B et C après exécution des instructions suivantes ?
Variables A, B, C en Entier
Début
A←5
B←3
C←A+B
A←2
C←B–A
Fin
07/11/2018 15
Exercices d’application
Énoncé des Exercices
Exercice 1.3
Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
Variables A, B en Entier
Début
A←5
B←A+4
A←A+1
B←A–4
Fin
07/11/2018 16
Exercices d’application
Énoncé des Exercices
Exercice 1.4
Quelles seront les valeurs des variables A, B et C après exécution des instructions suivantes ?
Variables A, B, C en Entier
Début
A←3
B ← 10
C←A+B
B←A+B
A←C
Fin
07/11/2018 17
Exercices d’application
Énoncé des Exercices
Exercice 1.5
Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
Variables A, B en Entier
Début
A←5
B←2
A←B
B←A
Fin
Moralité : les deux dernières instructions permettent-elles d’échanger les deux valeurs de B et A ?
Si l’on inverse les deux dernières instructions, cela change-t-il quelque chose ?
07/11/2018 18
Exercices d’application
Énoncé des Exercices
Exercice 1.6
Plus difficile, mais c’est un classique absolu, qu’il faut absolument maîtriser : écrire un algorithme permettant
d’échanger les valeurs de deux variables A et B, et ce quel que soit leur contenu préalable.
Exercice 1.7
Une variante du précédent : on dispose de trois variables A, B et C. Ecrivez un algorithme transférant à B la
valeur de A, à C la valeur de B et à A la valeur de C (toujours quels que soient les contenus préalables de ces
variables).
07/11/2018 19
1.4. Expressions et opérateurs
Les expressions
Si on fait le point, on s’aperçoit que dans une instruction d’affectation, on trouve :
• à gauche de la flèche, un nom de variable, et uniquement cela. En ce monde rempli de doutes qu’est celui
de l’algorithmique, c’est une des rares règles d’or qui marche à tous les coups : si on voit à gauche d’une
flèche d’affectation autre chose qu’un nom de variable, on peut être certain à 100% qu’il s’agit d’une
erreur.
• à droite de la flèche, ce qu’on appelle une expression. Voilà encore un mot qui est trompeur ; en effet, ce
mot existe dans le langage courant, où il revêt bien des significations. Mais en informatique, le terme
d’expression ne désigne qu’une seule chose, et qui plus est une chose très précise :
Une expression est un ensemble de valeurs, reliées par des opérateurs, et équivalent à une seule valeur
Exemple: a b² + c²
chiffre 364+2*3
note chiffre *0,75 / 100
moyenne note * 5 - chiffre
L’expression située à droite de la flèche doit être du même type que la
07/11/2018 variable située à gauche. 20
1.4. Expressions et opérateurs
Les opérateurs
Un opérateur est un signe qui relie deux valeurs, pour produire un résultat.
Les opérateurs possibles dépendent du type des valeurs qui sont en jeu.
07/11/2018 21
1.4. Expressions et opérateurs
Les opérateurs
Un opérateur est un signe qui relie deux valeurs, pour produire un résultat.
Les opérateurs possibles dépendent du type des valeurs qui sont en jeu.
07/11/2018 22
1.4. Expressions et opérateurs
Les opérateurs
Un opérateur est un signe qui relie deux valeurs, pour produire un résultat.
Les opérateurs possibles dépendent du type des valeurs qui sont en jeu.
&
07/11/2018 23
1.4. Expressions et opérateurs
Les opérateurs
07/11/2018 24
INTRODUCTION A L’ALGORITHME
2. De quoi parle-t-on ?
07/11/2018 26
2. De quoi parle-t-on ?
Dans n’importe quel programme (Algorithme), des échanges d’information ont lieu entre l’utilisateur et la
machine. Ces échanges d’informations sont appelés opération d’entrée/sortie.
De nombreux algorithmes ont pour but de communiquer avec un utilisateur, cela se fait dans les deux sens, les
sorties sont des envois de messages a l'utilisateur, les entrées sont des informations fournies par l'utilisateur.
La saisie interrompt le programme jusqu'a ce que l'utilisateur ait saisi une valeur au clavier. Une fois
cela fait, la valeur saisie est placée dans la variable NomVariable. Il est possible de saisir plusieurs
variables a la suite.
07/11/2018 27
2.1. Les instructions de lecture et écriture
Valeur
Exemple: Lire (A)
Lire (age)
Place les valeurs saisies par l'utilisateur dans les variables A, age.
Exemple 1: Ecrire (A) Affiche les valeurs des variables A, age à l’écran.
Ecrire (age)
07/11/2018 29
2.2. Construction d’un algorithme simple
Structure d’un algorithme simple Exemple: calcul de l’aire d’un cercle
Algorithme Nom-de-l’algorithme
Algorithme Calcul_AireCercle
Constantes: Constantes:
PI = 3,14
Variables : En entrer Variables :
En sortie rayon : réel
DEBUT surface : réel
DEBUT
Liste des instructions Ecrire (‘‘Entrez la valeur du rayon:’’)
Lire (rayon)
surface PI * (rayon*rayon)
Ecrire (surface)
FIN FIN
Fin de l’algorithme Fin de l’algorithme
07/11/2018 30
2.3. Langage naturel et langage algorithmique
Exemple :
Créer un algorithme qui calcule et affiche l’aire d’un rectangle après que l’utilisateur a entré les
dimensions du rectangle.
Algorithme Calcul_Aire_rectangle
Langage naturel: Variables :
longueur, largeur : entier
aire : entier
Entrer la longueur L
DEBUT
Entrer la largeur l Ecrire « Entrer la longueur »
Aire = L*l Lire (longueur)
Afficher l’Aire Ecrire « Entrer la largueur »
Lire (largeur)
aire longueur * largeur
Ecrire (aire)
FIN
Fin de l’algorithme
07/11/2018 31
Exercices d’application
Énoncé des Exercices
Exercice 2.1
Ecrire un programme qui demande un nombre à l’utilisateur, puis qui calcule et affiche le carré de ce nombre.
Exercice 2.2
Ecrire un programme qui lit le prix HT d’un article, le nombre d’articles et le taux de TVA, et qui fournit le
prix total TTC correspondant. Faire en sorte que des libellés apparaissent clairement.
Exercice 2.3
Ecrire un algorithme permettant de saisir trois nombres, d’en effectuer la somme, le produit et la moyenne,
puis les afficher.
Exercice 2.4
Ecrire un algorithme permettant de saisir deux nombres, de les permuter, puis les afficher.
Exercice 2.5
Ecrire un algorithme utilisant des variables de type chaîne de caractères, et affichant quatre variantes
possibles de la célèbre « belle marquise, vos beaux yeux me font mourir d’amour ». On ne se soucie pas de la
ponctuation, ni des majuscules.
07/11/2018 32
INTRODUCTION A L’ALGORITHME
07/11/2018 34
3.1. De quoi s'agit-il ?
Reprenons le cas de notre « algorithme du touriste égaré ». Normalement, l’algorithme ressemble à quelque
chose comme : « Allez tout droit jusqu’au prochain carrefour, puis prenez à droite et ensuite la deuxième à
gauche, et vous y êtes ».
Mais en cas de doute légitime de votre part, cela pourrait devenir : « Allez tout droit jusqu’au prochain
carrefour et là regardez à droite. Si la rue est autorisée à la circulation, alors prenez la et ensuite c’est la
deuxième à gauche. Mais si en revanche elle est en sens interdit, alors continuez jusqu’à la prochaine à
droite, prenez celle-là, et ensuite la première à droite ».
Le deuxième algorithme est meilleur au premier du fait qu’il prévoit, en fonction d’une situation pouvant se
présenter de deux façons différentes, deux façons différentes d’agir. Cela suppose que l’interlocuteur (le touriste)
sache analyser la condition que nous avons fixée à son comportement (« la rue est-elle en sens interdit ? ») pour
effectuer la série d’actions correspondante.
07/11/2018 35
3.2. Structure d’un test
Encore appelée structure conditionnelle, un test permet d’exécuter une séquence d’instructions si une
condition est vérifiée.
Si (condition) Alors
<Séquence d’instructions>
FinSi
La structure simple d’un test est relativement claire, arrivé à la première ligne (Si… Alors) la machine
examine la valeur de la condition. Si la cette valeur est VRAI, elle exécute la séquence d’instructions.
Cette séquence d’instructions peut être très brève comme très longue, cela n’a aucune importance. En
revanche, dans le cas où la condition est FAUX, l'ordinateur saute directement aux instructions situées après
le FinSi.
07/11/2018 36
3.2. Structure d’un test
Qu'est-ce qu'une condition ?
Une condition s’exprime sous forme d’une expression logique (Booléenne). Elle peut être:
• simple (condition simple): VRAI , FAUX
• ou combinée (plusieurs conditions composées) avec des opérateurs logiques ET, OU, NON, et des
opérateurs de comparaison.
07/11/2018 37
Exercices d’application
Énoncé des Exercices
Exercice 3.1
Ecrire un algorithme qui permet d’afficher la valeur absolue d’un nombre saisi au clavier par un utilisateur.
Exercice 3.2
Ecrire un algorithme qui demande un nombre à l’utilisateur, et l’informe ensuite si ce nombre est positif ou
négatif (on laisse de côté le cas où le nombre vaut zéro).
Exercice 3.3
Ecrire un algorithme permettant de comparer deux nombres réels.
Exercice 3.4
Ecrire un algorithme qui demande deux nombres à l’utilisateur et l’informe ensuite si leur produit est négatif ou
positif (on laisse de côté le cas où le produit est nul). Attention toutefois : on ne doit pas calculer le produit
des deux nombres.
07/11/2018 38
3.3. Tests imbriqués
Graphiquement, on peut très facilement représenter un SI comme un aiguillage de chemin de fer. Un SI ouvre donc
deux voies, correspondant à deux traitements différents. Mais il y a des tas de situations où deux voies ne suffisent
pas. Par exemple, un programme devant donner l’état de l’eau selon sa température doit pouvoir choisir
entre trois réponses possibles (solide, liquide ou gazeuse).
Algorithme Etat_Eau
Variable temp : Entier
Début
Ecrire "Entrez la température de l’eau :"
Lire (temp) Note: Vous constaterez que c’est un peu laborieux. Les
Si temp =< 0 Alors conditions se ressemblent plus ou moins, et surtout on
Ecrire "C’est de la glace" oblige la machine à examiner trois tests successifs alors
FinSi que tous portent sur une même chose, la température de
Si (temp > 0 ET temp < 100) Alors l'eau (la valeur de la variable Temp).
Ecrire "C’est du liquide"
Finsi
Si temp > 100 Alors
Ecrire "C’est de la vapeur"
Finsi
Fin
07/11/2018 FinAlgorithme 39
3.3. Tests imbriqués
Il serait ainsi bien plus rationnel d’imbriquer les tests de cette manière :
Exercice 3.5
Ecrire un algorithme qui permet de déterminer le plus grand de trois nombres saisis au clavier.
Exercice 3.6
Ecrire un algorithme qui demande deux nombres à l’utilisateur et l’informe ensuite si le produit est négatif ou
positif (on inclut cette fois le traitement du cas où le produit peut être nul). Attention toutefois, on ne doit
pas calculer le produit !
Exercice 3.7
Ecrire un algorithme qui demande l’âge d’un enfant à l’utilisateur. Ensuite, il l’informe de sa catégorie :
• "Poussin" de 6 à 7 ans
• "Pupille" de 8 à 9 ans
• "Minime" de 10 à 11 ans
• "Cadet" après 12 ans
07/11/2018 41
3.3. De l'aiguillage à la gare de tri
En effet, dans un programme, une structure SI peut être facilement comparée à un aiguillage de train. La
voie principale se sépare en deux, le train devant rouler ou sur l’une, ou sur l’autre, et les deux voies se
rejoignant tôt ou tard pour ne plus en former qu’une seule, lors du FinSi. On peut schématiser cela ainsi :
Si
FinSi
07/11/2018 42
3.3. De l'aiguillage à la gare de tri
Mais dans certains cas, ce ne sont pas deux voies qu’il nous faut, mais trois, ou même plus. Dans le cas de
l’état de l’eau, il nous faut trois voies pour notre « train », puisque l’eau peut être solide, liquide ou gazeuse.
Alors, nous n’avons pas eu le choix : pour deux voies, il nous fallait un aiguillage, pour trois voies il nous en
faut deux, imbriqués l’un dans l’autre.
Cette structure (telle que nous l’avons programmée à précédemment) devrait être schématisée comme suit :
Si
Séquence 2 Séquence 3
FinSi
07/11/2018 FinSi 43
3.3. De l'aiguillage à la gare de tri
Ainsi, il est possible (mais non obligatoire), que l’algorithme initial :
07/11/2018 46
3.6. Structure conditionnelle multiple (le choix)
Exercice 3.8
Ecrire un algorithme qui permettant à partir d’un menu affiché à l’écran, d’effectuer la somme ou le produit
ou la moyenne de trois nombres entré au clavier. Nous appelons « menu », l’association d’un numéro séquentiel
aux différent choix proposé par un programme.
07/11/2018 47
INTRODUCTION A L’ALGORITHME
07/11/2018 49
4.1. De quoi s’agit-il ?
contexte
Prenons le cas d’une saisie au clavier (une lecture), où par exemple, le programme pose une question à
laquelle l’utilisateur doit répondre par O (Oui) ou N (Non). Mais tôt ou tard, l’utilisateur, facétieux ou
maladroit, risque de taper autre chose que la réponse attendue. Dès lors, le programme peut planter soit par
une erreur d’exécution (parce que le type de réponse ne correspond pas au type de la variable attendu) soit
par une erreur fonctionnelle (il se déroule normalement jusqu’au bout, mais en produisant des résultats
fantaisistes).
Alors, dans tout programme un tant soit peu sérieux, on met en place ce qu’on appelle un contrôle de
saisie, afin de vérifier que les données entrées au clavier correspondent bien à celles attendues par
l’algorithme.
07/11/2018 50
4.1. De quoi s’agit-il ?
A vue de nez, on pourrait essayer avec un Si. Voyons voir ce que ça donne :
Algorithme Demande
Variable rep: Car C’est impeccable. Du moins tant que l’utilisateur a le bon
Début goût de ne se tromper qu’une seule fois, et d’entrer une
Ecrire « Voulez vous un café ? (O/N):" valeur correcte à la deuxième demande. Si l’on veut
Lire (rep) également bétonner en cas de deuxième erreur, il faudrait
Si (rep < > "O " OU rep < > "N ") alors rajouter un Si. Et ainsi de suite, on peut rajouter des
Ecrire "Saisie erronée. Recommencez" centaines de Si, et écrire un algorithme aussi lourd
Lire (rep) qu’une blague des Grosses Têtes, on n’en sortira pas, il y
FinSi aura toujours moyen qu’un acharné flanque le programme
Fin
par terre.
FinAlgorithme
07/11/2018 51
4.1. De quoi s’agit-il ?
Définition
Une boucle permet d'exécuter plusieurs fois de suite une même séquence d'instructions. Cette
ensemble d'instructions s'appelle le corps de la boucle. Chaque exécution du corps d'une boucle
s'appelle une itération, ou encore un passage dans la boucle. Il existe trois types de boucle :
tant que … faire
répéter ... jusqu’à
pour … faire
Chacune de ces boucles a ses avantages et ses inconvénients. Nous les passerons en revue ultérieurement.
07/11/2018 52
4.2. La boucle tant que … faire
Syntaxe:
Le principe est simple : le programme arrive sur la ligne du tant que. Il examine alors la valeur de la
condition (qui, je le rappelle, peut être une variable booléenne ou une expression). Si cette valeur est
VRAI, le programme exécute les instructions qui suivent, jusqu’à ce qu’il rencontre la ligne fin tant que. Il
retourne ensuite sur la ligne du tant que, procède au même examen, et ainsi de suite. Le manège enchanté
ne s’arrête que lorsque la condition n’est plus vérifier (le booléen prend la valeur FAUX).
07/11/2018 53
4.2. La boucle tant que … faire
Illustration avec notre problème de contrôle de saisie. Une première approximation de la solution
consiste à écrire :
NOTE : Une boucle tant que … faire n’est exécuter que si la condition est vérifier dès le départ.
07/11/2018 54
4.2. La boucle tant que … faire
Exercice 4.1
Ecrire un algorithme qui demande à l’utilisateur un nombre compris entre 1 et 3 jusqu’à ce que la réponse
convienne.
Exercice 4.2
Ecrire un algorithme qui demande un nombre compris entre 10 et 20, jusqu’à ce que la réponse convienne.
En cas de réponse supérieure à 20, on fera apparaître un message : « Plus petit ! », et inversement,
« Plus grand ! » si le nombre est inférieur à 10.
Exercice 4.3
Ecrire un algorithme qui demande un nombre de départ, et qui ensuite affiche les dix nombres suivants.
Par exemple, si l'utilisateur entre le nombre 17, le programme affichera les nombres de 18 à 27.
07/11/2018 55
4.3. La boucle répéter … jusqu’à
Syntaxe:
répéter
<Séquence d’instructions>
jusqu’à < condition>
Le fonctionnement est analogue a celui de la boucle tant que a quelques détails près :
• la condition est évaluée après chaque passage dans la boucle.
• on exécute le corps de la boucle jusqu'a ce que la condition soit vérifiée, donc tant que la condition est
fausse.
NOTE : Une boucle répéter ... jusqu'a s’exécutée donc au moins une fois avant de tester la condition .
07/11/2018 56
4.3. La boucle répéter … jusqu’à
Reprenons l'exemple précédent avec une boucle répéter ... jusqu'a :
07/11/2018 57
4.4. La boucle pour … faire
Syntaxe:
Pour < compteur> : = < valeur initiale> à < valeur finale> pas de < incrément> faire
<Séquence d’instructions>
fin pour
Si la valeur initiale est égale à la valeur finale, la séquence d’instruction définie est exécutée une seule fois.
Par contre, la séquence d’instruction n’est pas exécutée dans deux cas:
• Si la valeur initiale est strictement supérieure à la valeur finale alors que l’incrément est positive, ou bien
• Si la valeur initiale est strictement inférieure à la valeur finale alors que l’incrément est négative.
07/11/2018 58
4.4. La boucle pour … faire
La structure pour … faire est une simplification de la structure suivante:
07/11/2018 59
4.5. Les boucles imbriquées
Les boucles peuvent être imbriquées les unes dans les autres. Une boucle « tant que …faire » peut contenir une
autre boucle « tant que … faire », ou une boucle « répéter… jusqu’à », ou une autre boucle « pour … faire », et
vice versa.
De plus une boucle peut contenir une autre boucle qui elle-même peut contenir une autre boucle et ainsi de suite.
Exemple:
Algorithme Tables_Multiplication
Ecrire un algorithme permettant d’effectuer et d’afficher Variable :
toutes les tables de multiplication par 1 jusqu’à 12. i , j: entier
Début
Ecrire « Voulez vous un café ? (O/N):"
pour ( i := 1 à 12 ) faire
pour ( j := 1 à 12 ) faire
Ecrire j, "*", i , "=" , j * i
fin pour
fin pour
Fin
Fin Algorithme
07/11/2018 60
Exercices d’application
Énoncé des Exercices
Exercice 5.4
Ecrire un algorithme qui demande un nombre de départ, et qui ensuite écrit la table de multiplication de
ce nombre, présentée comme suit (cas où l'utilisateur entre le nombre 7) :
Table de 7 :
7x1=7
7 x 2 = 14
7 x 3 = 21
…
7 x 10 = 70
Exercice 5.5
Ecrire un algorithme qui demande un nombre de départ, et qui calcule la somme des entiers jusqu’à ce
nombre. Par exemple, si l’on entre 5, le programme doit calculer :
1 + 2 + 3 + 4 + 5 = 15
NB : on souhaite afficher uniquement le résultat, pas la décomposition du calcul.
07/11/2018 61
Exercices d’application
Énoncé des Exercices
Exercice 5.6
Ecrire un algorithme qui permet de calculer le factoriel d’un nombre entier n strictement positif sachant
que: n ! = 1 x 2 x 3 x ..… x n , et que
0 ! = 1 par convention
NB : le factoriel de 5, notée 5 !, vaut 1 x 2 x 3 x 4 x 5 = 120
le factoriel d’un nombre négatif n’existe pas, il est donc nécessaire que votre algorithme vérifie si le
nombre donné n’est pas négatif.
Exercice 5.7
Ecrire un algorithme qui demande successivement 20 nombres à l’utilisateur, et qui lui dise ensuite quel était
le plus grand parmi ces 20 nombres :
Entrez le nombre numéro 1 : 12
Entrez le nombre numéro 2 : 14
etc.
Entrez le nombre numéro 20 : 6
Le plus grand de ces nombres est : 14
Modifiez ensuite l’algorithme pour que le programme affiche de surcroît en quelle position avait été saisie ce
nombre :
C’était le nombre numéro 2
07/11/2018 62
Exercices d’application
Énoncé des Exercices
Exercice 5.8
Réécrire l’algorithme précédent, mais cette fois-ci on ne connaît pas d’avance combien l’utilisateur
souhaite saisir de nombres. La saisie des nombres s’arrête lorsque l’utilisateur entre un zéro.
Exercice 5.9
Ecrire l’algorithme qui permet de saisir une série de nombres entiers positifs puis qui propose
indéfiniment (en boucle) à l’utilisateur, par l’intermédiaire d’une sorte de menu à choix multiple,
d’afficher la valeur minimal, la valeur maximale, la somme ou la moyenne des nombres entrés, ou encore
de quitter le programme.
07/11/2018 63