Lycée Maximilien Sorre
Année 2015-2016
Algorithmique
1 Introduction
1.1 Algorithmes
Définition.
Un algorithme est une suite d’instructions à appliquer dans un ordre déterminé pour résoudre un problème.
Exemples 1. On peut trouver des exemples d’algorithmes dans la vie courante :
recette de cuisine,
notice de montage de meuble.
Remarque. Dans le domaine informatique, les algorithmes sont une suite d’instructions écrites dans un
langage informatique permettant de demander à l’ordinateur de résoudre un problème donné.
1.2 Langages informatiques
Le langage de l’ordinateur est le langage binaire, qui est composé uniquement de 0 et de 1.
Exemple 2. On peut par exemple traduire le mot « Bonjour »(codage UTF-8) par le code binaire
« 01000010011011110110111001101010011011110111010101110010 ».
Bien sûr, cela ne serait pas très pratique d’écrire directement nos algorithmes en binaire. C’est pour cela
que pour communiquer avec l’ordinateur, on a recours à ce que l’on appelle un langage informatique. Les
algorithmes sont donc écrits dans un langage informatique, et un programme se charge ensuite de traduire
ces algorithmes en langage binaire compréhensible par l’ordinateur.
1.3 Algobox
Le logiciel que nous allons utiliser cette année s’appelle Algobox. Ce logiciel, relativement simple d’utilisation,
a l’avantage d’utiliser un langage de programmation en français et d’être libre et gratuit. Il est par ailleurs
utilisable sous Linux, MacOsX et Windows.
Ce logiciel peut être téléchargé à l’adresse : http://www.xm1math.net/algobox/download.html
Exemple 3. Un premier algorithme avec Algobox :
1: VARIABLES
2: nombre_livres EST_DU_TYPE NOMBRE
3: prix EST_DU_TYPE NOMBRE
4: DEBUT_ALGORITHME
5: AFFICHER "Un livre coûte 5 euros. Combien de livres voulez-vous ?"
6: LIRE nombre_livres
7: prix PREND_LA_VALEUR nombre_livres * 5
8: AFFICHER "Vous devez payer "
9: AFFICHER prix
10: AFFICHER " euros"
11: FIN_ALGORITHME
Remarques.
Les algorithmes produits peuvent (et doivent) être sauvegardés sous la forme d’un fichier ayant l’extension
“.alg”.
Les exemples sont disponibles à l’adresse : http://amandine.schreck.free.fr/enseignement.html
Pour tester l’algorithme, il faut cliquer successivement sur les boutons Tester Algorithme puis
Lancer Algorithme . Si nécessaire, il faut ensuite saisir les valeurs demandées.
Une fois l’exécution de l’algorithme terminée, on revient à la fenêtre de l’algorithme en cliquant sur le
bouton Fermer .
1
2 Variables
2.1 Notion de variable et de type, déclaration
Définition.
Une variable est un emplacement dans la mémoire de l’ordinateur auquel on donne un nom. Dans cet em-
placement, on peut stocker une valeur, un texte ou une liste de valeurs. On peut accéder au contenu d’une
variable ou le modifier grâce au nom de la variable.
Remarque. Le nom des variables est laissé au choix du concepteur de l’algorithme. Il doit néanmoins com-
mencer par une lettre et ne pas comporter d’espace ni d’accents.
Il est fortement recommandé de choisir des noms permettant de comprendre ce que représente chaque variable.
Définition.
Dans Algobox, une variable peut être : un “nombre” (réel ou entier), une “chaîne” (pour chaîne de caractères,
autrement dit, du texte) ou une liste (de valeurs).
La nature d’une variable est appelée type.
Remarques.
Avant de commencer un algorithme, il est indispensable de réserver un emplacement dans la mémoire
de l’ordinateur pour chaque variable. C’est ce que l’on appelle la déclaration des variables.
La place occupée par une variable dans la mémoire de l’ordinateur dépend du type de la variable. C’est
pourquoi, dans la déclaration des variables, on déclare de type de chaque variable.
En Pratique.
Dans Algobox, pour déclarer une variable, on clique sur Déclarer nouvelle variable , puis on saisit le nom de
la variable, et on sélectionne son type.
Exercice 1.
Dans l’exemple 3, identifier la déclaration des variables, puis faire la liste des variables ainsi que de leurs types.
2.2 Lecture et affichage de variables
Pour communiquer avec l’ordinateur, l’utilisateur peut saisir des valeurs et les faire stocker dans des variables
(entrées) et faire afficher le contenu de variables (sorties).
Exemple 4. L’algorithme ci-dessous demande son prénom et son âge à l’utilisateur, puis affiche les informa-
tions obtenues.
1: VARIABLES
2: age EST_DU_TYPE NOMBRE
3: prenom EST_DU_TYPE CHAINE
4: DEBUT_ALGORITHME
5: AFFICHER "Quel est votre prénom ?"
6: LIRE prenom
7: AFFICHER "Quel âge avez-vous ?"
8: LIRE age
9: AFFICHER "Bonjour "
10: AFFICHER prenom
11: AFFICHER ", vous avez "
12: AFFICHER age
13: AFFICHER " ans."
14: FIN_ALGORITHME
Exercice 2.
Dans l’exemple 4, repérer entrées et les sorties.
Pour résumer :
La commande LIRE permet de :
La commande AFFICHER permet de :
2
En Pratique.
Dans Algobox, chaque ligne contient une unique instruction. Pour ajouter une instruction, il faut donc
commencer par ajouter une ligne à l’algorithme en cliquant sur Nouvelle Ligne (à droite de la fenêtre).
La lecture de variable s’effectue en cliquant sur Ajouter LIRE variable et en sélectionnant la variable à
lire.
L’affichage du contenu d’une variable s’effectue en cliquant sur Ajouter AFFICHER Variable , puis en
sélectionnant la variable à afficher.
On peut également afficher du texte en cliquant sur Ajouter AFFICHER Message , puis en saisissant le
texte à afficher.
Exercice 3.
Reproduire puis tester l’algorithme de l’exemple 4.
2.3 Affectation de variable
Définition.
L’affectation est une opération permettant de définir ou de modifier la valeur d’une variable.
Dans Algobox, cette opération est effectuée à l’aide de la commande PREND_LA_VALEUR.
En Pratique.
Dans Algobox, une affectation de variable se fait en cliquant sur AFFECTER valeur à variable , puis en
sélectionnant la variable à affecter, et en saisissant la valeur correspondante.
Remarques.
On peut affecter à une variable la valeur contenue dans une autre variable au moment de l’affectation .
On peut également faire apparaître la variable à affecter dans la valeur d’affectation.
Exemple 5. On considère les affectations de variables données ci-dessous.
1: VARIABLES
2: A EST_DU_TYPE NOMBRE
3: B EST_DU_TYPE NOMBRE
4: C EST_DU_TYPE NOMBRE
5: DEBUT_ALGORITHME
6: A PREND_LA_VALEUR 1
7: B PREND_LA_VALEUR 3
8: C PREND_LA_VALEUR A
9: A PREND_LA_VALEUR A+1
10: C PREND_LA_VALEUR C+B
11: B PREND_LA_VALEUR A+C
12: FIN_ALGORITHME
Exercice 4.
1) Reproduire dans Algobox l’algorithme de l’exemple 5
2) Compléter le tableau ci-dessous avec la valeur des variables à chaque ligne de l’algorithme de l’exemple 5:
Ligne Variable A Variable B Variable C
6
7
8
9
10
11
3
2.4 Exercices
Exercice 5.
Une épicerie vend de la farine à 1 euro le kilo, et des tablettes de chocolat à 2,5 euros. On veut écrire un
algorithme demandant à un client combien de kilos de farine et combien de tablettes de chocolat il désire, et
qui affiche le prix qu’il devra payer.
Reproduire et compléter l’algorithme à trous suivant :
1: VARIABLES
2: nb_kilos EST_DU_TYPE
3: EST_DU_TYPE NOMBRE
4: EST_DU_TYPE
5: DEBUT_ALGORITHME
6: AFFICHER "Combien de kilos de farine voulez-vous ?"
7: nb_kilos
8: AFFICHER "Combien de tablettes de chocolat voulez-vous ?"
9: nb_tablettes
10: prix nb_kilos * 1 + nb_tablettes * 2.5
11: AFFICHER "Prix total (en euros) : "
12: prix
13: FIN_ALGORITHME
Exercice 6.
Bob part en voyage aux États-Unis. Écrire un algorithme qui demande à Bob combien d’euros il veut emmener,
qui convertit cette somme en dollars (on suppose que 1 euro vaut 1,16 dollars), et qui affiche le résultat.
3 Instructions conditionnelles
3.1 Un premier exemple
Exemple 6. On considère l’algorithme ci-dessous.
1: VARIABLES
2: age EST_DU_TYPE NOMBRE
3: DEBUT_ALGORITHME
4: AFFICHER "Veuillez saisir votre âge."
5: LIRE age
6: SI (age < 18) ALORS
7: DEBUT_SI
8: AFFICHER "Vous êtes mineur"
9: FIN_SI
10: SINON
11: DEBUT_SINON
12: AFFICHER "Vous êtes majeur"
13: FIN_SINON
14: FIN_ALGORITHME
Exercice 7.
1) Tester l’algorithme de l’exemple 6.
2) Que fait l’algorithme ?
3.2 Utilisation d’instructions conditionnelles
La structure conditionnelle est basée sur une condition formulée en général à l’aide d’opérateurs de compa-
raison. On utilisera six opérateurs de comparaison :
En mathématiques, ces opérateurs (bien connus) sont notés : =,6=,<,,>,.
Dans Algobox, ces opérateurs sont (dans le même ordre) : ==,! =,<,<=,>,>=.
La structure conditionnelle fonctionne de la façon suivante : si la condition est vérifiée, alors on exécute les
instructions contenues entre le DEBUT_SI et le FIN_SI. Sinon, on exécute les instructions contenues entre le
DEBUT_SINON et le FIN_SINON.
Remarque. Le SINON est optionnel. Si on ne met pas de SINON et que la condition n’est pas vérifiée, on passe
directement à la suite de l’algorithme.
4
En Pratique.
Dans Algobox, la structure conditionnelle s’obtient en cliquant sur Ajouter SI...ALORS , puis en saisissant
la condition à considérer. Attention à ne pas oublier de cocher la case “Ajouter SINON” si nécessaire.
3.3 Exercices
Exercice 8.
Une place dans un cinéma coûte 8 euros pour les personnes ayant 16 ans ou moins et 10 euros pour les autres.
On veut écrire un algorithme qui demande l’âge du client et affiche le prix qu’il devra payer.
Reproduire et compléter l’algorithme à trous ci-dessous :
1: VARIABLES
2: EST_DU_TYPE NOMBRE
3: EST_DU_TYPE
4: DEBUT_ALGORITHME
5: AFFICHER "Veuillez saisir votre âge."
6: LIRE age
7: SI ALORS
8: DEBUT_SI
9: prix PREND_LA_VALEUR
10: FIN_SI
11: SINON
12: DEBUT_SINON
13: prix PREND_LA_VALEUR
14: FIN_SINON
15: AFFICHER "Prix de la place de cinéma (en euros) : "
16: AFFICHER
17: FIN_ALGORITHME
Exercice 9.
Bob va à la plage si il fait plus de 25 degrés. Sinon, il reste chez lui.
Écrire un algorithme qui demande de saisir la température, et qui affiche un message disant si Bob va à la
plage ou non.
4 Boucles
4.1 Un premier exemple
Exemple 7. On considère l’algorithme suivant :
1: VARIABLES
2: i EST_DU_TYPE NOMBRE
3: DEBUT_ALGORITHME
4: POUR iALLANT_DE 1A10
5: DEBUT_POUR
6: AFFICHER i
7: AFFICHER " : bonjour !"
8: FIN_POUR
9: FIN_ALGORITHME
Exercice 10.
1) Tester l’algorithme de l’exemple 7.
2) Que fait l’algorithme ?
Remarque.
On utilise une boucle lorsque l’on veut répéter plusieurs fois une instruction donnée. Il existe deux types de
boucles que nous détaillons ci-dessous.
4.2 Boucle POUR
On utilise une boucle POUR lorsque l’on connaît à l’avance le nombre de répétitions (on parle d’itérations) que
l’on veut faire.
La boucle POUR utilise une variable, que l’on appelle compteur, qui sert à repérer le nombre d’itérations déjà
effectuées. Le compteur part d’une valeur de départ et augmente de 1 à chaque itération, jusqu’à atteindre
5
1 / 7 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !