Livre_silo 30 août 2013 16:32 Page 84
¨
©
¨
©
¨
©
¨
©
C o p y r i g h t E y r o l l e s
84
Informatique pour tous
4.1 Instructions
4.1.1 Notion d’algorithme
Un algorithme est une procédure permettant de résoudre un problème, écrite de façon
suffisamment détaillée pour être suivie sans posséder de compétence particulière ni même
comprendre le problème que l’on est en train de résoudre.
On compare souvent les algorithmes à des recettes de cuisine. Cette comparaison est correcte au sens où il n’ est pas nécessaire de comprendre pourquoi le four doit être à 180°C
et pas à 250°C pour réussir la recette ; elle atteint ses limites quand la recette demande
des gestes techniques pour lesquels une expérience en cuisine est nécessaire. De la même
façon, une notice de montage peut constituer un algorithme permettant de monter un
meuble sans savoir comment son assemblage a été conçu, à condition que tous les outils
nécessaires soient fournis avec la notice.
Un algorithme a cette autre particularité qu’il permet en réalité de résoudre une classe
de problèmes similaires, et non pas un problème unique. Ainsi, un algorithme d’addition
comme celui que l’on apprend à l’école primaire sert à calculer la somme de n’importe quels
nombres décimaux, et on voit mal quelle utilité il aurait s’il ne calculait la somme que de
deux nombres fixés une fois pour toutes.
Pour faire fonctionner un algorithme, il faut donc lui fournir des données précisant l’instance du problème qu’il devra traiter. En retour, l’algorithme construira un résultat répondant à cette instance du problème.
4.1.2 Notion de programme
Les algorithmes ont existé bien avant les ordinateurs, pour réaliser des tâches purement
matérielles comme pour résoudre des problèmes très calculatoires. L’exécution d’un algorithme étant complètement déterminée par celui-ci, la difficulté que posait leur utilisation
à la main résidait dans le volume de calculs parfois nécessaires et les inévitables erreurs humaines introduites dans le procédé. Avec l’apparition des premiers ordinateurs, il devenait
possible de faire exécuter un algorithme de façon beaucoup plus rapide et plus sûre que
jamais.
Le prix à payer est de devoir traduire cet algorithme sous une forme non ambiguë et lisible
par la machine. Un programme est la traduction d’un algorithme dans un langage particulier, à la fois interprétable par la machine et compréhensible par l’homme. Il est constitué
d’un assemblage d’instructions, regroupées dans un fichier texte appelé le code source du
programme.
L’ exécution du programme commence à la première instruction, puis en exécute d’autres en
suivant des règles précises. Le parcours des instructions au cours de l’exécution est appelé
le flot d’exécution.
Précédent

- 97/402

Suivant