Quelle différence entre algorithme et programme ?

Quelle différence entre algorithme et programme ?

Tu sais expliquer à un ami comment dessiner un carré : « avance, tourne, et recommence 4 fois ». Mais un robot ne comprend pas le français ! Il faut lui écrire la même idée dans sa langue : c’est le programme.

De l’idée au code

L’algorithme est l’idée, la méthode, indépendante de la machine. Le programme est cet algorithme écrit dans un langage de programmation que l’ordinateur peut exécuter : Scratch au collège, Python au lycée, et bien d’autres.

Scratch a été créé en 2007 au MIT pour apprendre à programmer avec des blocs qu’on emboîte. Python, inventé en 1991 par le Néerlandais Guido van Rossum, est aujourd’hui l’un des langages les plus utilisés au monde.

L’essentiel à retenir

Algorithme = la méthode — programme = la méthode traduite dans un langage de programmation

Un même algorithme peut donner plusieurs programmes, dans des langages différents. Un programme doit respecter exactement la syntaxe du langage : une faute de frappe peut l’empêcher de fonctionner.

Le piège à éviter

Croire que l’ordinateur « comprend » ce qu’on veut faire. Il exécute exactement ce qui est écrit, ni plus ni moins. Si le programme fait n’importe quoi, l’erreur (le « bug ») vient presque toujours du programme, pas de la machine. Le mot bug viendrait d’ailleurs d’un insecte trouvé dans un ordinateur en 1947.

À quoi ça sert ?

Toutes les applications, les jeux, les sites web, les robots et les objets connectés fonctionnent grâce à des programmes. Savoir programmer, même un peu, permet de comprendre ces outils, de les adapter et de créer ses propres projets en technologie.

Questions fréquentes

Quelle est la différence entre un algorithme et un programme ?

L’algorithme est la méthode pour résoudre un problème ; le programme est cette méthode écrite dans un langage que l’ordinateur peut exécuter.

C’est quoi un langage de programmation ?

Un langage aux règles strictes qui permet d’écrire des instructions pour un ordinateur : Scratch, Python, JavaScript…

C’est quoi un bug ?

Une erreur dans un programme, qui le fait mal fonctionner ou l’empêche de fonctionner.

Peut-on écrire un même algorithme en plusieurs langages ?

Oui : l’algorithme reste le même, seule l’écriture change.

Pour aller plus loin

Toutes les notions de base du collège · EasySciences

La fiche mémo de cette notion

Toute la notion résumée sur une page A4, à télécharger pour réviser.

Télécharger la fiche mémo (abonnés)