Mathématiques 7e année : Pensée informatique avec les suites
Mathématiques, 7e année (Portugal) : Abstraire, décomposer, reconnaître un motif, écrire un algorithme et le déboguer, tout autour d'une question : ce nombre est-il un terme de la suite ?
Cinq outils, une question
Question : 98 est-il un terme de la suite −7, −4, −1, 2, … ? Abstraire : ne garde que l'essentiel, le premier terme (−7) et le pas (+3). Décomposer : trouver la règle, la défaire, vérifier le résultat, trois étapes simples. Reconnaître des motifs : tu connais déjà « premier terme plus un pas constant ». Algorithme : écrire des étapes valables pour n'importe quelle valeur, pas seulement 98. Déboguer : tester les étapes sur des cas connus et corriger ce qui échoue. La règle : le terme de rang n est 3 × n − 10.
Un motif réutilisable
Un théâtre a 14 places au rang 1 et 2 de plus à chaque rang suivant, donc le rang n a 2 × n + 12 places : 14, 16, 18, 20… Y a-t-il un rang d'exactement 50 places ? Même forme que la suite précédente, donc les mêmes étapes : retrancher 12 (38), diviser par 2 (19), et 19 est un entier naturel : oui, le rang 19. Et 51 ? 51 − 12 = 39, 39 ÷ 2 = 19,5, pas un rang : non. Reconnaître le motif permet de réutiliser la procédure : seuls les nombres changent (ajouter 10 et diviser par 3 sont devenus retrancher 12 et diviser par 2).
Un cas : l'algorithme de « x est-il un terme ? »
Suite −7, −4, −1, 2, … de terme de rang n égal à 3 × n − 10. Algorithme : 1) ajouter 10 à x ; 2) diviser par 3 ; 3) si le résultat est un entier naturel (1, 2, 3, …), x est le terme de ce rang ; sinon, x n'est pas un terme. Cas x = 98 : 98 + 10 = 108 et 108 ÷ 3 = 36, donc 98 est le 36e terme. Vérification : 3 × 36 − 10 = 98 ✓. Cas x = 100 : 100 + 10 = 110 et 110 ÷ 3 = 36,67…, qui n'est pas un entier naturel, donc 100 n'est pas un terme (le 36e est 98 et le 37e est 101).
Il a passé deux tests, donc il est juste
La version de Rui de l'algorithme dit : « ajoute 10, divise par 3 et, si le résultat est entier, x est un terme ». Elle a marché pour 98 et 100. Déboguer, c'est chercher les cas difficiles. Essaie x = −10 : −10 + 10 = 0, 0 ÷ 3 = 0, qui est entier, et elle répond « oui ». Mais le premier terme est −7, au rang 1, et le rang 0 n'existe pas. Même chose avec −16 (rang −2). La correction : vérifier aussi que le résultat vaut au moins 1. Teste les extrêmes : le premier terme, des valeurs avant lui, des valeurs intermédiaires.
Où on le voit : tableurs et programmes
Dans un tableur, mets les rangs 1 à 8 dans la colonne A et écris =3*A1-10 dans la colonne B : −7, −4, −1, 2, 5, 8, 11, 14. Une règle est devenue une procédure qu'une machine répète sans réfléchir. Les programmeurs font ce que tu as fait : découper la tâche en petits blocs, tester chacun avec des valeurs faciles et difficiles (le premier, le dernier, zéro, des négatifs) et corriger le bloc qui échoue. Vérifier si une valeur appartient à une liste construite par une règle est un travail que les programmes font souvent.
Teste ce que tu as appris
Dans le problème « 98 est-il un terme de −7, −4, −1, 2, … ? », quelle action est de l'abstraction ?
- a) Découper le travail en trois étapes : trouver la règle, la défaire, vérifier
- b) Tester les étapes sur un terme déjà connu, comme 14
- c) Ne garder que le premier terme −7 et le pas +3, et laisser le reste
- d) Réutiliser plus tard les mêmes étapes pour les places d'un théâtre
Bonne réponse: c) Ne garder que le premier terme −7 et le pas +3, et laisser le reste — Exact : abstraire, c'est extraire l'information essentielle ; ici le premier terme et le pas suffisent.
La suite −7, −4, −1, 2, … a pour terme de rang n : 3 × n − 10. Avec l'algorithme (ajouter 10, diviser par 3, le résultat doit être naturel), quel nombre est un terme ?
- a) 60
- b) 61
- c) 64
- d) 62
Bonne réponse: d) 62 — Exact : 62 + 10 = 72 et 72 ÷ 3 = 24, donc 62 est le 24e terme. Vérification : 3 × 24 − 10 = 62.
L'algorithme de Rui (ajouter 10, diviser par 3, « résultat entier veut dire que x est un terme ») dit que x = −10 est un terme de −7, −4, −1, 2, … Où est l'erreur ?
- a) Il ne vérifie jamais que le rang vaut au moins 1 : (−10 + 10) ÷ 3 = 0, et le rang 0 n'existe pas
- b) Il devrait diviser par 10 au lieu de 3
- c) Il n'y a pas d'erreur : −10 viendrait avant −7, donc c'est un terme
- d) Il ne devrait pas ajouter 10, car le premier terme est −7
Bonne réponse: a) Il ne vérifie jamais que le rang vaut au moins 1 : (−10 + 10) ÷ 3 = 0, et le rang 0 n'existe pas — Exact : le premier terme est au rang 1, donc un résultat 0 (ou négatif) veut dire que x n'est pas dans la suite.
Continue d'explorer
Autres langues
Chargement de MyLeoNes™…