ECS 1 - Externat des Enfants Nantais [2014-2015] TP2 | Structures conditionnelles
Jean-Marc BERROU - 2014-2015 page 1 1
1 TP2 | Structures conditionnelles
Pour les concours, il vous sera demandé de comprendre le fonctionnement d’algorithmes, d’être capables
d’en écrire ou d’en modifier. Ceci implique deux compétences distinctes : comprendre les ressorts généraux
de l’algorithmique d’une part et connaître la syntaxe de Scilab d’autre part. Pour ce deuxième TP, nous allons
voir comment écrire des algorithmes avec Scilab
1.1 Quelques rappels d’algorithmique
Un algorithme est une suite finie d’instructions
dont l’exécution dans l’ordre aboutit à la réalisa-
tion d’une tâche prédéfinie. Un algorithme com-
prend en général :
•des entrées
•un traitement (les différentes instructions)
•des sorties
Un exemple bien connu d’algorithme est la re-
cette de cuisine. En entrées1nous avons un certain
nombre d’ingrédients. Le traitement consiste en
les différentes étapes d’élaboration. La sortie est
le plat finalisé. Si cet exemple paraît naïf, cette lo-
gique algorithmique est poussée à l’extrême dans
les usines agroalimentaires... et de manière géné-
rale la pensée algorithmique est l’un des ressorts
du monde industriel rationnalisé.
Pour être un peu plus précis sur ce qui fait qu’un ensemble de commandes est, ou non, un algorithme, voici
les cinq critères que l’éminent informaticien Donald Knuth2a énoncés :
•la finitude : « Un algorithme doit toujours se terminer après un nombre fini d’étapes. »
•définition précise : « Chaque étape d’un algorithme doit être définie précisément, les actions à trans-
poser doivent être spécifiées rigoureusement et sans ambiguïté pour chaque cas. »
•entrées : « ... des quantités qui lui sont données avant qu’un algorithme ne commence. Ces entrées
sont prises dans un ensemble d’objets spécifié. »
•sorties : « ... des quantités ayant une relation spécifiées avec les entrées. »
•rendement : « … toutes les opérations que l’algorithme doit accomplir doivent être suffisamment
basiques pour pouvoir être en principe réalisées dans une durée finie par un homme utilisant un papier
et un crayon. »
1au pluriel, ce n’est pas l’entrée du menu ici
2professeur émérite de l’université de Stanford né en 1938, connu comme l’auteur de The art of computer programming, un des
rares ouvrages d’informatique des années 70 qui soit encore une référence aujourd’hui. Il est également l’inventeur des langages
T
EX et METAPOST qui servent encore aujourd’hui à la conception des livres de mathématiques du commerce et des documents
plus modestes comme ce polycopié