Mettre en oeuvre des algorithmes

L’objectif d’un programme est généralement :

  1. Effectuer un traitement (calculs, chargement de fichiers ou de données…).
  2. Afficher le résultat du traitement dans le flux de sortie.

Les algorithmes sont à la base de tout programme. Un bon développeur est avant tout un bon algorithmicien.

Un algorithme est une méthode permettant de résoudre un problème de manière systématique.

Les algorithmes ne sont pas spécifiques à l’informatique.

Les 3 exemples ci-dessous sont des algorithmes:

Ce qui distingue un algorithme d’une autre méthode de résolution de problèmes, c’est le caractère systématique de son exécution. En d’autres termes, un algorithme ne doit demander aucune initiative à celui ou celle qui l’exécute. Par exemple, un ordinateur n’étant capable d’aucune initiative, il ne peut exécuter une tâche que si on lui fournit un algorithme pour le faire. Tout programme informatique a donc, par définition, la structure d’un algorithme.

Le caractère systématique ne signifie pas que l’exécutant de l’algorithme ne doit rien savoir faire a priori. Au contraire, tout algorithme présuppose un certain nombre de capacités.

Dans nos 3 exemples cités précédemment:

Les algorithmes pour l’informatique doivent donc s’appuyer sur ce que “sait faire” l’ordinateur.

En pratique, ces capacités dépendent du langage et de l’environnement de programmation utilisés.

Supports de cours

  1. Algorithmes Introduction - 1.0.1 MD.pdf
  2. Algorithmes Representation - 1.0.1 MD.pdf

Travaux pratiques

  1. Exercices Algorithmes