Pensée informatique : instructions, boucles et tableur
Tu as sûrement déjà programmé un lutin dans Scratch pour qu'il dessine un carré. Pourquoi ne pas écrire quatre fois la même instruction ? Et comment un tableur peut-il calculer en une seconde le prix d'un abonnement sur 12 mois ? Dans cette page, tu apprends à lire un programme, à utiliser une boucle et à écrire des formules de tableur. Tu pourras alors expliquer pourquoi une boucle évite les répétitions.
Programmes : entrée, calcul, sortie
Un programme est une suite d'instructions exécutées dans l'ordre, l'une après l'autre. Il a souvent :
-
une entrée : la valeur de départ (un nombre $x$ ou $n$) ;
-
des instructions de calcul ;
-
une sortie : le résultat affiché.
On peut représenter un programme par un schéma.
Un programme peut aussi utiliser une formule : « calculer $y = 3x - 4$ ». Pour trouver la sortie, on remplace $x$ par l'entrée. Pour retrouver une entrée à partir d'une sortie, on peut tester des valeurs ou remonter le calcul en sens inverse.
Un programme prend un nombre $n$, ajoute $5$, puis multiplie le résultat par $2$. Quelle est la sortie pour $n = 3$ ?
Un programme prend un nombre $n$, ajoute $5$, puis multiplie le résultat par $2$. Quelle est la sortie pour $n = 3$ ?
Un programme : entrée $x$ ; calculer $y = 3x - 4$ ; sortie $y$. a) Calculer la sortie pour $x = 5$. b) Quelle entrée donne la sortie $11$ ?
Un programme : entrée $x$ ; calculer $y = 3x - 4$ ; sortie $y$.
- a) Calculer la sortie pour $x = 5$.
- b) Quelle entrée donne la sortie $11$ ?
Boucles : répéter des instructions
Dans Scratch, on commande un lutin avec des blocs comme « avancer de 10 pas » ou « tourner de $90^\circ$ ». Quand une même suite d'instructions se répète, on utilise une boucle « répéter $n$ fois ».
Une boucle dont on connaît à l'avance le nombre de répétitions s'appelle une boucle inconditionnelle : « répéter 4 fois : avancer de 10 pas » fait avancer le lutin de $4 \times 10 = 40$ pas.
Pour tracer un carré de côté $50$ pas :
Le lutin parcourt $4 \times 50 = 200$ pas : c'est le périmètre du carré.
Pour un carré : $360 \div 4 = 90^\circ$. Pour un triangle équilatéral, ce n'est pas $60^\circ$ ! Le triangle a des angles de $60^\circ$ à l'intérieur, mais le lutin tourne de l'angle extérieur : $180^\circ - 60^\circ = 120^\circ$. Et on vérifie : $360 \div 3 = 120$.
Un script répète $4$ fois « avancer de $10$ pas ». De combien de pas avance le lutin au total ?
Un script répète $4$ fois « avancer de $10$ pas ». De combien de pas avance le lutin au total ?
Un script répète $4$ fois : « avancer de $50$ pas, tourner de $90^\circ$ ». a) Quelle figure trace le lutin ? b) Quel est le périmètre de cette figure en pas ?
Un script répète $4$ fois : « avancer de $50$ pas, tourner de $90^\circ$ ».
- a) Quelle figure trace le lutin ?
- b) Quel est le périmètre de cette figure en pas ?
On veut tracer un triangle équilatéral de côté $60$ pas avec un script utilisant une boucle « répéter ». a) Combien de fois faut-il répéter ? b) De quel angle le lutin…
On veut tracer un triangle équilatéral de côté $60$ pas avec un script utilisant une boucle « répéter ».
- a) Combien de fois faut-il répéter ?
- b) De quel angle le lutin doit-il tourner à chaque fois ? Justifier avec la somme des angles d'un triangle.
- c) Écrire le script en langage naturel.
Variables et boucles qui calculent
Une variable est une « boîte » qui garde une valeur. L'instruction $s \leftarrow s + 3$ se lit : « la nouvelle valeur de $s$ est l'ancienne valeur de $s$ plus 3 ».
On peut ainsi exprimer la sortie en fonction de l'entrée $n$. Pour retrouver l'entrée connaissant la sortie, on cherche par quel nombre multiplier : ici, pour une sortie de $45$, $45 \div 5 = 9$.
Un programme : entrée $n$ ; $s \leftarrow 0$ ; répéter $n$ fois : $s \leftarrow s + 3$ ; sortie $s$. a) Quelle est la sortie pour $n = 6$ ? b) Exprimer la sortie en…
Un programme : entrée $n$ ; $s \leftarrow 0$ ; répéter $n$ fois : $s \leftarrow s + 3$ ; sortie $s$.
- a) Quelle est la sortie pour $n = 6$ ?
- b) Exprimer la sortie en fonction de $n$.
- c) Pour quelle entrée la sortie vaut-elle $45$ ?
Le tableur et ses formules
Un tableur est un tableau de cellules. Chaque cellule a un nom : la colonne (une lettre) puis la ligne (un numéro). A1 est la cellule de la colonne A, ligne 1.
Une formule commence toujours par le signe =. Elle utilise les noms de cellules et les opérations : +, -, * (multiplier), / (diviser), ^ (puissance).
Si A1 contient $5$, alors =A1*2+1 affiche $5 \times 2 + 1 = 11$. Les priorités opératoires s'appliquent comme d'habitude.
Recopier vers le bas : quand on recopie une formule d'une ligne à la suivante, les numéros de ligne s'adaptent. Si B1 contient =A1*2+1, alors B2 contient =A2*2+1, B3 contient =A3*2+1, etc.
| A | B | |
|---|---|---|
| 1 | 1 | =A1*2+1 → 3 |
| 2 | 2 | =A2*2+1 → 5 |
| 3 | 3 | =A3*2+1 → 7 |
Pour trouver une valeur d'entrée qui donne un résultat voulu, on peut tester des valeurs dans la cellule A2 jusqu'à obtenir le bon résultat, ou construire un tableau de valeurs en recopiant la formule vers le bas.
Dans un tableur, la cellule A1 contient $7$. Quel résultat affiche la formule =A1*3+2 ?
Dans un tableur, la cellule A1 contient $7$. Quel résultat affiche la formule =A1*3+2 ?
Dans un tableur, la colonne A contient $1$, $2$, $3$, ..., $10$ en A1:A10. En B1, on écrit =A1^2+1 et on recopie la formule vers le bas. a) Quelle valeur apparaît en B4…
Dans un tableur, la colonne A contient $1$, $2$, $3$, ..., $10$ en A1:A10. En B1, on écrit =A1^2+1 et on recopie la formule vers le bas.
- a) Quelle valeur apparaît en B4 ?
- b) Quelle formule se trouve en B7 ?
Une salle de sport de Toulouse facture $15$ € d'inscription puis $8$ € par mois. Dans un tableur, A2 contient le nombre de mois. a) Écrire la formule de B2 qui donne le…
Une salle de sport de Toulouse facture $15$ € d'inscription puis $8$ € par mois. Dans un tableur, A2 contient le nombre de mois.
- a) Écrire la formule de B2 qui donne le coût total.
- b) Calculer le coût pour $12$ mois.
- c) Déterminer, en testant des valeurs, le nombre de mois pour un coût de $95$ €.
Pour revenir à la question du début : une boucle évite d'écrire quatre fois la même instruction, et le tableur calcule des dizaines de lignes avec une seule formule recopiée.
L'essentiel
-
Un programme exécute ses instructions dans l'ordre, avec une entrée et une sortie.
-
Une boucle « répéter $n$ fois » répète des instructions ; pour un polygone régulier à $n$ côtés, le lutin tourne de $360^\circ \div n$.
-
Une variable garde une valeur ; $s \leftarrow s + 3$ ajoute $3$ à $s$.
-
Dans un tableur, une formule commence par
=et utilise des noms de cellules ; elle s'adapte quand on la recopie vers le bas.