Algorithmique
T. Sautiere / France IOI
En l'an 2132, une planète habitée a été découverte aux confins de la galaxie, et baptisée
Algoréa. Dix ans plus tard, vous êtes envoyé(e) en mission autour de cette planète dans le
but d'établir un tout premier contact avec ses habitants. Malheureusement, la comète Hal
a percuté votre vaisseau alors que vous vous approchiez d'Algoréa. Vous avez été
contraint(e) de vous éjecter en urgence dans une capsule de sauvetage. Vous atterrissez
sur la planète avec pour seul bagage un robot de maintenance.
Isolé(e) sur ce globe lointain, vous allez donc rencontrer ses habitants, découvrir leurs
coutumes et créer des liens afin d'entamer une relation pacifique en attendant que la
prochaine mission vienne vous récupérer. Vous allez pour cela profiter des capacités de
votre robot ! Celui-ci est accompagné d'un manuel, qui vous sera bien utile dans votre
parcours. Ce robot est capable d'imprimer du texte, d'afficher des caractères sur un écran,
de se déplacer et de bouger des objets.
I. Introduction
Avez-vous déjà ouvert un livre de recettes de cuisine ? Avez-vous déchiffré un mode d’emploi traduit
directement du coréen pour faire fonctionner un magnétoscope ou un répondeur téléphonique réticent ?
Si oui, sans le savoir, vous avez déjà exécuté des algorithmes.
Plus fort : avez-vous déjà indiqué un chemin à un touriste égaré ? Avez-vous fait chercher un objet à
quelqu’un par téléphone ? Ecrit une lettre anonyme stipulant comment procéder à une remise de
rançon ? Si oui, vous avez déjà fabriqué et fait exécuter des algorithmes.
Comme quoi, l’algorithmique n’est pas un savoir ésotérique réservé à quelques rares initiés touchés par
la grâce divine, mais une aptitude partagée par la totalité de l’humanité. Donc, pas d’excuses…
Algorithme : Un algorithme est une suite finie de règles à appliquer dans un ordre déterminé à un
nombre fini de données pour arriver avec certitude, en un nombre fini d’étapes, à un certain résultat et
cela, indépendamment des données.
Programme : Un programme informatique est une suite d’instructions ou séquence d’instructions.
C’est la réalisation informatique d’un ou plusieurs algorithmes. Il dépend du langage.
Compilateur et compilation : Le compilateur est un programme qui traduit un code écrit dans un
langage de programmation en langage dit "machine", compréhensible par l’ordinateur. La compilation
est le fait de traduire un programme afin que l’ordinateur le comprenne.
Langage interprété : Un langage interprété est converti en instructions propres à la machine au fur
et à mesure de son exécution.
Mot-clé : Un mot-clé est une composante du langage et fait partie de sa grammaire qui comprend
également les opérateurs numériques.
En Python :
Liste obtenue à l’aide du programme Python suivant :
Instruction : Ce terme est assez vague et dépend en général du langage. On peut considérer qu’une
instruction est une expression syntaxiquement correcte pour un langage donné.
II. Les outils
Tu auras besoin de feuilles et crayon, car avant de te jeter sur un PC tu dois apprendre
à réfléchir sur l’algorithme que tu veux construire avant d’en rédiger un programme dans le
langage choisi.
Nous utiliserons scratch : https://scratch.mit.edu/projects/editor/?tip_bar=getStart
Le langage Python : https://www.jetbrains.com/pycharm-edu/
Et surtout ta calculatrice Ti premium CE ou 82 Advance
III. Les conventions d’écriture d’un algorithme en pseudo-code.
La notation appelée « pseudo-code », ressemble à un langage de programmation authentique dont on
aurait évacué la plupart des problèmes de syntaxe. Ce pseudo-code est susceptible de varier légèrement
d’un livre (ou d’un enseignant) à un autre. C’est bien normal : le pseudo-code, encore une fois, est
purement conventionnel ; aucune machine n’est censée le reconnaître. Donc, chaque cuisinier peut faire
sa sauce à sa guise, avec ses petites épices bien à lui, sans que cela prête à conséquence.
Comme je n’ai pas moins de petites manies que la majorité de mes semblables, le pseudo-code que vous
découvrirez dans les pages qui suivent possède quelques spécificités mineures qui ne doivent qu’à mes
névroses personnelles.
Rassurez-vous cependant, celles-ci restent dans les limites tout à fait acceptables.
En tout cas, personnellement, je les accepte très bien.
# Il est essentiel de commenter son algorithme, pour en améliorer sa compréhension.
DEBUT
Allez tout droit jusqu’au prochain carrefour # Instruction
SI la rue à droite est autorisée à la circulation ALORS # Structure conditionnelle
Tourner à droite
Avancer
Prenez la deuxième à gauche
SINON # En vert nous écrivons les mots clés de notre langage pseudo-code
Continuez jusqu’à la prochaine rue à droite
Prenez cette rue
Prenez la première à droite
FIN_SI
FIN
VARIABLE Temp TYPE_ENTIER # claration des variables utilisées et de leur type.
DEBUT
ECRIRE "Entrez la température de l’eau :" # SORTIE
LIRE Temp # Affectation externe. # ENTREE
SI Temp 0 ALORS # TRAITEMENT
ECRIRE "C’est de la glace" # SORTIE
SINON # TRAITEMENT
SI Temp < 100 ALORS # TRAITEMENT
ECRIRE "C’est du liquide" # SORTIE
SINON
ECRIRE "C’est de la vapeur" # SORTIE
FIN_SI
FIN_SI
FIN
Les mots clés, du langage pseudo-code, utilisés dans ce document :
DEBUT
FIN
ALORS
SINON
PAS
FAIRE
TANT_QUE
FIN_TANT_QUE
SOUS_PROGRAMME
FIN_SI
VARIABLE(S)
REPETER
ECRIRE
JUSQU_A
RETOURNER
POUR
A
DE
CONSTANTE
Les types de données que nous allons manipuler :
TYPE_ENTIER
TYPE_REEL
TYPE_BOOLEEN
TYPE_CHAINE
# On précèdera les commentaires nécessaires à la compréhension d’un algorithme par le symbole dièse.
1 / 45 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 !