Algorithmique et informatique

L’algorithmique est une discipline, commune aux mathématiques et à l’informatique, dans laquelle on apprend à écrire des algorithmes.

Algorithme

Un algorithme est une suite de consignes.

L’algorithme, dans son ensemble, indique comment résoudre un problème (trouver le résultat d’un calcul, prendre une décision intelligente, etc.). En suivant, les unes après les autres, les consignes d’un algorithme, il est donc possible de résoudre un problème.

Exemple d’algorithme :

Pour résoudre une équation du premier degré, de la forme $a \times x + b = c$, on peut suivre un algorithme. Voici les consignes de l’algorithme :

  • Consigne 1 : Passer le nombre b à gauche en faisant une soustraction/addition.
  • Consigne 2 : Calculer le membre de droite de l’équation.
  • Consigne 3 : Passer le nombre a à gauche en faisant une division/multiplication.
  • Consigne 4 : Calculer le membre de droite de l’équation.

Exemple d’application d’un algorithme :

Si on applique l’algorithme décrit ci-dessus à l’équation $2 \times x + 4 = 8$ cela donne :

  • Consigne 1 : $2 \times x = 8 - 4$
  • Consigne 2 : $2 \times x = 4$
  • Consigne 3 : $x = {4 \over 2}$
  • Consigne 4 : $x = 2$

Algorithme en informatique

En informatique, les consignes d’un algorithme sont appelées des instructions.

Un ordinateur est capable d’effectuer, les unes à la suite des autres, toutes les instructions d’un algorithme : on dit alors qu’il exécute l’algorithme, ou qu’il exécute les instructions de l’algorithme.

Les programmes informatiques (logiciel PC, applications mobiles, site-web, programme d’une voiture autonome, etc.) sont composés d’algorithmes, qui indiquent à la machine (ordinateur, smartphone, voiture, etc.) ce qu’il doit faire.

Lorsqu’on écrit un algorithme, il faut se mettre à la place de « celui » qui lira l’algorithme. En informatique, on devra donc se mettre à la place de l’ordinateur qui exécutera notre algorithme.

Ordinateur

Les algorithmes écrits en mathématiques sont destinés à être exécutés par des ordinateurs. Voici quelques notions sur le fonctionnement d’un ordinateur, essentiels pour savoir écrire un algorithme.

Mémoire

Un ordinateur est capable de mémoriser des informations : ces informations sont appelées des données. L’ordinateur stockera les données dans des puces électroniques, qu’on appelle ses mémoires.

L’ordinateur pourra ensuite effectuer plusieurs opérations liées à ses mémoires et aux données qu'elles contiennent. Il pourra notamment :

  • récupérer/lire des données qui se trouvent dans sa mémoire ;
  • modifier des données qui se trouvent dans sa mémoire ;
  • supprimer des données de sa mémoire ;
  • ajouter de nouvelles données dans sa mémoire.

Variables

La mémoire d’un ordinateur peut être découpée en plusieurs cases, qui peuvent chacune stocker une donnée.

Dans un algorithme, on pourra accéder à une case, et à la donnée qu’elle stocke, en utilisant ce qu’on appelle une variable. Une variable est un nom, qui fait référence à une case de la mémoire de l’ordinateur. Les données stockées, et donc les variables, peuvent être de plusieurs types. On trouve :

  • les nombres entiers. Ex : 1 / -50 / 234 ;
  • les nombres réels. Ex : 1,5 / -0,23 / 412,0 ;
  • les caractères, qu’on notera entre apostrophes. Ex : 'a' / 'R' / '@' / '7' / '#' ;
  • les chaînes de caractères, qu’on notera entre guillemets. Ex : "Bonjour" / "Nomad Éducation" ;
  • les booléens, qui sont des données binaires, ne pouvant prendre que deux valeurs : Vrai ou Faux.

Entrées-Sorties

 

Un ordinateur peut être connecté à des périphériques d’entrées-sorties, pour lui permettre de communiquer avec un utilisateur humain. Un ordinateur possède habituellement, au minimum :

  • un écran, qui est un périphérique de sortie, car il permet de faire sortir des données de l’ordinateur, à destination de l’utilisateur ;
  • un clavier et une souris, qui sont des périphériques d’entrée, car ils permettent de faire entrer des données dans l’ordinateur, en provenance de l’utilisateur.

Dans un algorithme, on pourra :

  • afficher une donnée sur un périphérique de sortie (écran) grâce à l’instruction d’écriture ;
  • récupérer une donnée venant d’un périphérique d’entrée (clavier, souris) grâce à l’instruction de lecture.