Rédiger le cours
Moon Arrows Sun
Arrows

Initiation à la pensée informatique

Décomposer une tâche en ordres simples, les enchaîner, les répéter, puis corriger ce qui ne marche pas.

Un robot aspirateur avance jusqu'au mur, tourne, repart : il suit des instructions, dans l'ordre.

S'il rate un coin, c'est que personne ne lui a dit d'y aller.

Une machine ne devine rien : elle fait exactement ce qui est écrit, dans l'ordre où c'est écrit.

Ce chapitre se mène avec ou sans machine : il s'agit de décomposer une tâche en ordres simples.

Une instruction

Une instruction est un ordre unique et précis, exécutable sans deviner.

« Avancer de \(3\) cases » est une instruction ; « aller un peu plus loin » est ambiguë.

Une séquence d'instructions

Une séquence

Une séquence est une suite d'instructions exécutées dans l'ordre.

Exemple : pour tracer un rectangle :

  1. avancer de \(5 \ \text{cm}\) ;
  2. tourner d'un quart de tour vers la droite ;
  3. avancer de \(3 \ \text{cm}\) ;
  4. tourner d'un quart de tour vers la droite ;
  5. avancer de \(5 \ \text{cm}\) ;
  6. tourner d'un quart de tour vers la droite ;
  7. avancer de \(3 \ \text{cm}\).

L'ordre des instructions compte

Échanger deux instructions change en général le résultat.

Exemple : « avancer de \(4\), puis tourner à droite » ne mène pas au même endroit que « tourner à droite, puis avancer de \(4\) ».

Certaines s'échangent sans conséquence : avancer de \(2\) puis de \(3\), ou l'inverse.

Exécuter une séquence

Exécuter, c'est suivre les instructions une par une, en notant l'état après chacune.

Exemple : un robot part de la case \(\mathrm{B2}\) et exécute : avancer de \(3\) cases vers la droite, puis de \(2\) vers le haut.

Un quadrillage repéré de A à F et de un à cinq, où un robot va de B2 à E4
\(\mathrm{A}\)
\(\mathrm{B}\)
\(\mathrm{C}\)
\(\mathrm{D}\)
\(\mathrm{E}\)
\(\mathrm{F}\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
Un quadrillage repéré de A à F et de un à cinq, où un robot va de B2 à E4 - support à compléter
\(\mathrm{A}\)
\(\mathrm{B}\)
\(\mathrm{C}\)
\(\mathrm{D}\)
\(\mathrm{E}\)
\(\mathrm{F}\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
Étape
Instruction
Case atteinte
Départ
-
\(\mathrm{B2}\)
\(1\)
Avancer de \(3\) vers la droite
\(\mathrm{E2}\)
\(2\)
Avancer de \(2\) vers le haut
\(\mathrm{E4}\)
$$ \text{le robot arrive en } \mathrm{E4} $$

La répétition

Une répétition

Répéter, c'est exécuter plusieurs fois de suite la même séquence d'instructions.

Pour un carré, le même groupe revient quatre fois :

Répéter \(4\) fois : \(\Bigl[\) avancer de \(5 \ \text{cm}\) ; tourner d'un quart de tour vers la droite \(\Bigr]\)

Plus courte, et plus lisible.

On déroule la répétition à la main :

$$ 4 \times 2 = 8 \text{ instructions} $$

Ne pas confondre le nombre de répétitions et le nombre d'instructions exécutées.

Programmer un déplacement

Pour aller d'une case à une autre, en trois temps :

  1. repérer l'écart horizontal entre départ et arrivée ;
  2. repérer l'écart vertical ;
  3. écrire les instructions correspondantes.

Exemple : aller de \(\mathrm{A1}\) à \(\mathrm{D3}\). De \(\mathrm{A}\) à \(\mathrm{D}\), il y a \(3\) colonnes ; de \(1\) à \(3\), il y a \(2\) lignes.

Avancer de \(3\) vers la droite ; avancer de \(2\) vers le haut

On aurait pu commencer par monter : un chemin n'est pas unique.

Trouver l'erreur dans un programme

Si un programme échoue, on cherche à quelle étape il dévie :

  1. exécuter le programme pas à pas ;
  2. comparer avec ce que l'on attendait à cette étape ;
  3. la première différence désigne l'instruction fautive.

Erreurs fréquentes : une instruction oubliée, deux instructions dans le mauvais ordre, ou un nombre de répétitions inexact.