Quatrième · Technologie · Chapitre 5
Programmer : comprendre, compléter et modifier un programme associé à une fonctionnalité
- fonctionnalité
- entrées et sorties (capteurs, actionneurs, fichiers)
- algorithme en langage naturel
- variables (mot, nombre, booléen)
- opérateurs arithmétiques et logiques (ET, OU, NON)
- instruction conditionnelle
- instructions itératives
- listes
Ce que tu sauras faire
- Décrire la fonctionnalité d'un OST par ses entrées (capteurs, commandes de l'utilisateur, fichiers), son traitement et ses sorties (actionneurs, affichages, fichiers).
- Lire un programme, en blocs ou en texte, et le traduire en un algorithme en langage naturel, en le déroulant à la main avec un tableau de suivi.
- Utiliser des variables de type mot, nombre ou booléen, et évaluer une expression avec les opérateurs arithmétiques et logiques ET, OU, NON.
- Choisir et écrire une instruction conditionnelle (si, alors, sinon) ou une instruction itérative (répéter n fois, tant que, pour chaque), et éviter une boucle sans fin.
- Stocker des données dans une liste, la parcourir, en tirer un total, une moyenne ou un maximum, et en déduire une modification du programme.
- Expliquer ce qu'est un événement et comment il déclenche une séquence d'instructions.
- Compléter et modifier un programme, le tester avec un plan de test (cas courants et valeurs limites) dans un environnement simulé, puis valider la modification par rapport à la fonctionnalité attendue.
Au programme du chapitre
- Une fonctionnalité, un programme : entrées, traitement, sorties
- L'algorithme en langage naturel : décrire avant de coder
- Les variables : mémoriser des valeurs
- Les booléens et les opérateurs logiques : ET, OU, NON
- L'instruction conditionnelle : décider selon une condition
- Les instructions itératives : répéter
- Les listes : stocker plusieurs données
- Les événements : quand quelque chose se passe, une séquence démarre
- Trois écritures du même programme : langage naturel, blocs, texte
- Comprendre, compléter, modifier, tester : la démarche complète
Exercices corrigés
Exercice 1
Dans un programme, on lit l'instruction
n = n + 1. Un camarade proteste : « C'est impossible, un nombre ne peut pas être égal à lui-même plus 1 ! » Que réponds-tu ? Donne la valeur de n après l'instruction si n valait 3 avant.Un coup de pouce
À droite du signe, on utilise l'ancienne valeur ; à gauche, on range la nouvelle.
Voir la correction pas à pas
Il confond deux sens du signe
La machine calcule d'abord le membre de droite avec l'ancienne valeur de n : 3 + 1 = 4. Elle range ensuite ce résultat dans n. Après l'instruction, n vaut 4.
Cette instruction est très utile : elle permet de compter, en ajoutant 1 à chaque passage dans une boucle.
=. En mathématiques, = affirme une égalité, et « n = n + 1 » n'aurait aucune solution. En programmation, = est une affectation : elle se lit « n prend la valeur ».La machine calcule d'abord le membre de droite avec l'ancienne valeur de n : 3 + 1 = 4. Elle range ensuite ce résultat dans n. Après l'instruction, n vaut 4.
Cette instruction est très utile : elle permet de compter, en ajoutant 1 à chaque passage dans une boucle.
Exercice 2
Une barrière de parking doit s'ouvrir si le conducteur présente un badge valide ou si le gardien appuie sur son bouton. Quel opérateur logique relie les deux conditions ? Que se passerait-il avec l'autre opérateur ? Et si le badge est valide et que le gardien appuie en même temps ?
Un coup de pouce
Cherche dans quels cas la barrière doit s'ouvrir, puis demande-toi si chaque cas est couvert.
Voir la correction pas à pas
L'opérateur est OU : une seule des deux conditions suffit pour ouvrir.
Avec ET, il faudrait un badge valide et l'appui du gardien en même temps. Le gardien ne pourrait plus ouvrir à un visiteur sans badge, et un abonné ne pourrait plus entrer sans le gardien : la fonctionnalité ne serait plus remplie.
Si les deux conditions sont vraies à la fois, la barrière s'ouvre aussi, parce que le OU logique est inclusif : il est vrai quand l'une, l'autre ou les deux sont vraies.
Avec ET, il faudrait un badge valide et l'appui du gardien en même temps. Le gardien ne pourrait plus ouvrir à un visiteur sans badge, et un abonné ne pourrait plus entrer sans le gardien : la fonctionnalité ne serait plus remplie.
Si les deux conditions sont vraies à la fois, la barrière s'ouvre aussi, parce que le OU logique est inclusif : il est vrai quand l'une, l'autre ou les deux sont vraies.
Les pièges à éviter
- Confondre = et == dans une condition.
- Croire que OU exclut le cas où les deux conditions sont vraies.
- Écrire une condition vague : « quand il fait trop chaud », « si ça dure longtemps ».
- Tester l'égalité avec une mesure décimale : « si température == 28 ».
Pour aller plus loin
Le même thème dans d’autres classes
- Programmer un objet technique : comprendre et modifier un programme — Technologie, cinquième
Technologie dans les autres classes
Réviser autrement
- Technologie : toutes les révisions — de la cinquième à la troisième
- Toutes les matières de la quatrième
- Préparer un devoir ou un DS — tous les chapitres, toutes les classes