Je réserve ici
Mathématiques 4ᵉ

Ressources · 4ᵉ · Mathématiques

Fiche de révision : initiation à la programmation

Rappels de 5e et de 6e (blocs, directions, coordonnées du lutin, blocs opérateurs, boucle « répéter n fois », polygones réguliers), conditions et instructions conditionnelles « si … alors … sinon », variables (mettre à, ajouter à, compteur, somme), programmes de calcul avec des variables et expression littérale, événements, écrire, modifier et corriger un programme.

Télécharger la fiche PDF

benprofparticulier.frMathématiques · 4ᵉ

Programmation : tests, variables et boucles

Fiche méthode

(Mathématiques 4ᵉ · Algorithmique et programmation · Scratch)

La démarche pour dérouler un script à la main

1. Je note l’état de départ : position (x;y), direction, valeur de chaque variable, nombre tapé.

2. Je déroule le script bloc par bloc dans un tableau d’état : une colonne par variable, une ligne par bloc ou par tour de boucle. Pour un « si », j’écris la condition avec les valeurs du moment et je décide : vraie ou fausse.

3. Je conclus : ce que dit le lutin, sa position, la valeur finale des variables ou la figure tracée.

Le réflexe — Scratch exécute les blocs dans l’ordre ; « mettre … à » remplace, « ajouter … à » cumule ; dans un « si … sinon », une seule branche est exécutée.

Cas 1 · Rappels de 5e et de 6e : blocs, coordonnées, calculs et boucle

Réflexe — je calcule ce que fait un tour de boucle, puis je multiplie ; polygone régulier à n côtés : 360÷n degrés à chaque coin.

Exemple 1. Le lutin est en (30;−80) : « répéter 5 fois [ ajouter −25 à x ; ajouter 30 à y ] ». Position finale ?

30+5×(−25)=30−125=−95 et −80+5×30=−80+150=70 : (−95;70).

Exemple 2. De combien de degrés tourner pour un polygone régulier à 30 côtés ?

360÷30=12 degrés à chaque coin.

Attention — « ajouter … à x » n’est pas « mettre x à … » ; l’angle dont tourne le lutin n’est pas l’angle du polygone.

Cas 2 · Conditions et instructions conditionnelles

Réflexe — j’écris la condition avec les valeurs du moment, je décide vraie ou fausse, j’exécute une seule branche.

Exemple. On tape −6. « si réponse > −8 alors dire (réponse * 2) sinon dire 0 ». Que dit le lutin ?

−6>−8 est vraie (−6 est à droite de −8) : branche « alors », (−6)×2=−12. Le lutin dit −12.

Attention — « < » et « > » sont stricts : « réponse > 8 » est fausse pour 8. Pour « au moins », on écrit la condition contraire et on échange les branches.

1 / 2

benprofparticulier.frMathématiques · 4ᵉ

Cas 3 · Les variables : mettre à, ajouter à, compteur

Réflexe — un tableau d’état, une colonne par variable ; je calcule avec l’ancienne valeur, puis j’écris la nouvelle.

Exemple. « mettre c à 2 ; répéter 3 fois [ mettre c à (c * c) ] ». Valeur finale de c ?

2→2×2=4→4×4=16→16×16=256. c vaut 256.

Attention — une variable non initialisée garde son ancienne valeur ; et une copie (« mettre b à a ») ne suit pas les changements de a.

Cas 4 · Programmes de calcul avec des variables

Réflexe — je déroule avec la lettre n en gardant les parenthèses, je réduis, je vérifie avec une valeur ; pour retrouver n, je résous une équation.

Exemple. « mettre n à réponse ; mettre r à (n - 1) ; mettre r à (r * 5) ; ajouter n à r ; dire r ». Expression de r ? Quel nombre fait dire 31 ?

r =5(n−1)+n=5n−5+n=6n−5.

6n−5=31 donne 6n=36, donc n=6. Vérification : (6−1)×5+6=31.

Attention — « mettre r à (r * 5) » multiplie toute la valeur de r : 5(n−1) et non 5n−1.

Cas 5 · Écrire et modifier un programme

Réflexe — boucle pour ce qui se répète, « si » pour un choix, variable pour ce qui change ou se compte ; je teste à la main.

Exemple. Au départ, clics vaut 0. À chaque appui sur la touche espace : « ajouter 1 à clics ; si clics = 3 alors dire Gagné ! ». Quand le lutin dit-il « Gagné ! » ?

Chaque appui exécute le script une fois : clics vaut 1, 2, 3, 4… La condition n’est vraie qu’au 3ᵉ appui : le lutin dit « Gagné ! » une seule fois.

Attention — un « mettre … à 0 » placé dans une boucle remet la variable à 0 à chaque tour.

Les pièges

  • Croire que « tourner » fait avancer le lutin : il change seulement de direction.
  • Oublier que « < » et « > » sont stricts : « temps > 30 » est fausse quand temps vaut 30.
  • Exécuter les deux branches d’un « si … sinon » : une seule est exécutée.
  • Confondre « mettre score à 5 » (remplace) et « ajouter 5 à score » (cumule).
  • Écrire 3n+6 au lieu de 3(n+6) pour « mettre r à (n + 6) » suivi de « mettre r à (r * 3) ».
  • Placer l’initialisation d’une variable dans la boucle : elle repart de sa valeur de départ à chaque tour.

Ce document est la propriété intellectuelle de Ben, professeur particulier (benprofparticulier.fr), protégée par le Code de la propriété intellectuelle (art. L. 111-1 et L. 122-4). Il est mis à disposition pour un usage personnel de révision. Toute reproduction, diffusion, mise en ligne ou revente, totale ou partielle, sans autorisation écrite est interdite et constitue une contrefaçon (art. L. 335-2).

2 / 2

À propos de cette page
Cette fiche méthode donne la démarche pour dérouler un script à la main avec un tableau d’état, puis un exemple corrigé par cas : position après une boucle, condition avec un nombre négatif, variable qui se multiplie par elle-même, programme de calcul et équation, compteur déclenché par la touche espace. Les pièges classiques sont listés à la fin.
Bloqué sur ce chapitre ?

Moi c'est Ben, j'ai créé ce site pour aider le plus d'élèves possible, partout en France. Je peux aussi reprendre avec toi ce qui coince en cours particulier : en visio, ou à domicile si tu es à Marseille.

Prof de maths à Marseille · Cours particuliers au collège · Aide aux devoirs