Du besoin à la fonctionnalité
Tu veux qu’une porte de garage s’ouvre toute seule quand le badge approche. Par où commence-t-on… par le code ?
L'essentiel
Quand tu veux qu'un objet fasse quelque chose de nouveau, tu ne te jettes pas tout de suite sur le code. Tu décomposes d'abord le besoin en une recette d'étapes claires et dans le bon ordre : c'est l'algorithme. Cet algorithme est écrit avec des mots de tous les jours, donc tu peux le comprendre même sans connaître un langage de programmation.
L'idée à retenir
Programmer une fonctionnalité, c’est d’abord CONCEVOIR : on décompose le besoin en un algorithme (une suite d’étapes ordonnées, écrites en langage naturel, qui produit le résultat attendu), puis seulement on le traduit en programme. L’algorithme est indépendant du langage : on conçoit avant de coder.
Comment ça marche, étape par étape
- DU BESOIN À L’ALGORITHME — Avant de coder, on écrit la « recette » : lire le badge ; si le badge est reconnu, alors ouvrir la porte ; refermer après 20 secondes. Des étapes ordonnées, en langage de tous les jours. L’ordre compte, et cet algorithme ne dépend d’aucun langage de programmation.
- DE L’ALGORITHME AU PROGRAMME — Chaque étape devient une instruction (des blocs, ou du texte) et on garde le MÊME ORDRE. Le curseur exécute les blocs l’un après l’autre… et la porte s’ouvre : l’action est réalisée. On finit toujours par tester que le programme répond au besoin.
Comprendre
Regarde une porte de garage connectée : tu veux qu'elle s'ouvre toute seule quand le badge approche. Avant d'écrire la moindre ligne de code, il faut savoir exactement ce que l'objet doit faire, étape par étape. C'est ça, concevoir une fonctionnalité : partir du besoin, le décomposer, puis écrire un algorithme.
Un algorithme, c'est une suite d'étapes ordonnées, écrites en langage naturel (avec des mots normaux), qui mène au résultat voulu. Pour la porte de garage, le besoin « ouvrir la porte quand le badge approche » devient : 1) lire le badge ; 2) si le badge est reconnu, alors ouvrir la porte, sinon ne rien faire ; 3) refermer la porte après 20 secondes. Chaque étape est précise, et leur ordre compte : si tu refermes avant d'ouvrir, ça n'a aucun sens.
Cette manière de faire se retrouve dans plein d'objets techniques. Un feu de circulation intelligent : détecter les voitures, puis passer au vert la voie la plus chargée. Un arrosage automatique : mesurer l'humidité du sol, et si la terre est sèche, déclencher l'eau pendant un temps donné.
Une alarme : si un capteur détecte une intrusion, alors faire sonner. Un store automatisé : si le soleil tape trop fort, alors descendre le store. La règle essentielle à retenir : l'algorithme en langage naturel est la « recette d'instructions » ordonnée, et il est indépendant du langage de programmation.
Le même algorithme pourra ensuite être codé en Scratch, en Python ou ailleurs. On conçoit d'abord, on code ensuite : c'est ce qui évite de se tromper et de tout reprendre.
Le cours
Programmer une fonctionnalité, c'est faire faire une nouvelle action à un objet technique ou à un système. La première étape n'est pas le code : c'est la conception. On part du besoin (ce que l'objet doit faire), on le décompose, puis on écrit un algorithme.
Un algorithme est une suite d'étapes ordonnées, exprimées en langage naturel, qui produit le résultat attendu. Le langage naturel, ce sont des phrases normales : « lire le badge », « si reconnu, alors ouvrir ». L'ordre des étapes est essentiel, car changer l'ordre change le résultat.
Exemple complet, la porte de garage connectée. Besoin : ouvrir la porte quand le badge approche. Algorithme : 1) lire le badge ; 2) si le badge est reconnu, alors ouvrir la porte, sinon ne rien faire ; 3) refermer la porte après 20 secondes.
On retrouve la même démarche dans un feu de circulation intelligent, un arrosage automatique, une alarme ou un store automatisé : chaque fois, on décrit les étapes avant de coder. Point clé : l'algorithme est indépendant du langage de programmation. Le même algorithme pourra être traduit en Scratch ou en Python.
Concevoir avant de coder permet de vérifier que la logique est juste, puis de programmer sans se perdre. Cette étape de conception est le pont entre le besoin de l'utilisateur et le programme final. Un dernier point, explicite dans le repère de 3e du BO 2024 : le programme commande un système RÉEL, avec lequel un humain interagit.
Tout ce par quoi l'utilisateur donne un ordre à la machine ou en reçoit une information s'appelle l'interface homme-machine, l'IHM. D'un côté les ENTRÉES : un bouton poussoir, un badge passé devant un lecteur, une zone tactile sur un écran, un interrupteur. De l'autre les SORTIES : un voyant qui s'allume, un écran qui affiche un message, un vibreur, un signal sonore.
Quand tu écris l'algorithme, pense à ces deux bouts : par quoi l'utilisateur déclenche-t-il l'action, et comment l'objet lui dit-il ce qui se passe ? Dans la porte de garage, l'IHM d'entrée est le lecteur de badge et l'IHM de sortie le voyant vert ou rouge qui indique si le badge a été reconnu.
Vois cette notion fonctionner : la scène animée, plan par plan →
Les erreurs fréquentes
- Programmer, c'est écrire du code tout de suite sans réfléchir aux étapes avant.
- On conçoit AVANT de coder : on décompose le besoin en un algorithme (étapes ordonnées en langage naturel), puis seulement on le traduit en code. Sauter cette étape mène à des erreurs et à tout reprendre.
- Un algorithme est forcément écrit dans un langage de programmation comme Scratch ou Python.
- Un algorithme est d'abord écrit en langage naturel et reste indépendant du langage. Le même algorithme peut ensuite être codé en Scratch, en Python ou ailleurs : c'est la recette, pas encore le code.
Tu maîtrises la notion si…
- Définir un algorithme comme une suite d'étapes ordonnées, écrites en langage naturel, qui produit le résultat attendu.
- Décomposer un besoin simple (porte de garage, arrosage, alarme…) en un algorithme en langage naturel avant de coder.
- Expliquer que l'algorithme est indépendant du langage de programmation et qu'on conçoit avant de coder.
Vérifie que tu as compris
Pour concevoir une nouvelle fonctionnalité, par quoi commence-t-on AVANT d'écrire le programme ?
Réponse On décompose le besoin en un algorithme : une suite d'étapes ordonnées
Concevoir, c'est d'abord traduire le besoin en algorithme écrit en langage naturel : une suite d'étapes ordonnées. On écrit le programme seulement ensuite, à partir de cet algorithme.
Un algorithme, c'est…
Réponse une suite d'étapes ordonnées qui résout un problème
Un algorithme décrit, étape par étape et dans l'ordre, comment répondre au besoin. Il s'écrit en langage naturel avant d'être traduit en programme.
Dans un algorithme, pourquoi l'ORDRE des étapes est-il important ?
Réponse Parce qu'une étape peut dépendre du résultat d'une étape précédente
Un algorithme est une suite ORDONNÉE : si on intervertit des étapes, le résultat peut devenir faux car certaines étapes ont besoin du résultat des précédentes.
S'entraîner sur cette notion
La scène s'anime pas à pas, la mascotte t'explique, puis tu t'entraînes. Gratuit pour commencer.
Ouvrir cette scène dans Azulma →Les quatre étapes pour maîtriser cette notion
Un algorithme : une suite d’étapes ordonnées, écrites en langage naturel.
Ce n’est ni une pièce, ni un langage : c’est la recette d’étapes, dans l’ordre, écrite avec des mots normaux.
On conçoit avant de coder : besoin → algorithme → programme → test.
L’algorithme se rédige AVANT le code, pour décomposer le besoin ; il est indépendant du langage (Scratch ou Python).
La porte s’ouvre quand le badge est reconnu : écris l’algorithme, étape par étape.
Pense capteur d’abord : que faut-il LIRE avant de décider ? Puis la condition, puis ce qui doit arriver une fois la porte ouverte.
Sonner si un capteur détecte une intrusion — et le même algorithme se code en Scratch OU en Python.
Lire le capteur ; si une intrusion est détectée, alors faire sonner ; sinon, surveiller. La suite d’étapes ne dépend pas du langage.
Au brevet, cette notion tombe dans ces sujets
- Sport et santé : la montre connectée d'un coureur
DNB 2026 · Polynésie · Technologie - Le robot de maraîchage Oz
DNB 2025 · Centres étrangers · Technologie - La reconnaissance faciale
DNB 2025 · Polynésie · session de septembre · Technologie - Le robot collecteur de déchets flottants
DNB 2022 · Métropole–Antilles-Guyane · Technologie