Créer ses propres blocs : la notion de fonction
Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.
Créer un compteCe tuto fait suite à Boucles imbriquées et motifs. Dans ce chapitre, on avait « aplati » un bloc personnalisé du brevet pour rendre le script lisible. Ici, on fait l'inverse : on apprend à créer ses propres blocs. Donner un nom à un groupe d'instructions, c'est exactement la notion de fonction que l'on retrouve ensuite en programmation Python au lycée.
Pourquoi créer ses propres blocs ?
Quand un programme grandit, les mêmes instructions reviennent souvent. Tracer deux carrés, c'est écrire deux fois la même suite de blocs : c'est long, et la moindre correction doit être reportée partout.
Le même code, écrit deux fois
Pour dessiner deux carrés côte à côte, on répète la suite répéter 4 fois (avancer, tourner), une fois par carré.
La partie « tracer un carré » apparaît deux fois à l'identique. L'idée d'un bloc personnalisé est de lui donner un nom — par exemple carré — pour ne l'écrire qu'une seule fois et l'appeler ensuite autant de fois qu'on veut.
Créer un premier bloc
Un bloc personnalisé se range dans la catégorie Mes blocs. On le crée d'abord (on dit ce qu'il fait), puis on l'utilise dans le programme principal.

Le bloc carré
Sous le chapeau définir carré, on place la suite d'instructions qui trace un carré. Le bloc rose carré résume désormais ces quatre tours à lui tout seul.
Dans le programme principal, on appelle simplement le bloc carré : c'est comme si tout son contenu se déroulait sur place.
Le programme principal est devenu beaucoup plus court et beaucoup plus clair : on lit « tracer un carré, se déplacer, tracer un carré ». Le résultat sur la scène est exactement le même qu'au début : deux carrés identiques, séparés par un petit espace.
Astuce
Le chapeau rose définir carré ne se lance pas tout seul : il décrit le bloc. C'est le programme principal (sous le drapeau vert) qui appelle le bloc carré pour qu'il s'exécute.
Ajouter un paramètre
Pour l'instant, notre bloc trace toujours un carré de $60$ pas. On peut le rendre bien plus utile en lui donnant une entrée : un nombre que l'on choisit au moment de l'appel. En Scratch, cette entrée s'appelle un paramètre ; c'est l'équivalent de la variable d'une fonction en mathématiques.
Le bloc carré (côté)
On remplace le nombre fixe $60$ par le paramètre côté. Le bloc trace maintenant un carré de la taille qu'on lui demande.
À l'appel, on écrit la taille voulue dans la pastille. Voici trois carrés emboîtés de tailles croissantes, tracés depuis le même point.
Un seul bloc, trois tailles différentes : c'est tout l'intérêt du paramètre. Si on voulait dix carrés de tailles différentes, le bloc carré (côté) suffirait toujours.
Sur la scène, on obtient trois carrés emboîtés qui partagent le même coin de départ.
Composer ses blocs
Un bloc personnalisé s'utilise exactement comme un bloc normal : on peut donc le placer dans une boucle. C'est la façon propre de construire les rosaces du chapitre précédent — au lieu d'imbriquer deux boucles, on définit le motif une fois, puis on le répète.
Une rosace de triangles, version propre
On définit d'abord un bloc triangle (côté). L'angle extérieur d'un triangle équilatéral vaut $180^{\circ} - 60^{\circ} = 120^{\circ}$.
Le programme principal appelle ce bloc dans une boucle, en pivotant de $\dfrac{360^{\circ}}{6} = 60^{\circ}$ entre chaque triangle.
On retrouve la rosace de six triangles du brevet Asie 2025, mais le programme est bien plus lisible : la boucle externe dit « répéter le motif en pivotant », et le bloc triangle dit « voici le motif ». C'est exactement la structure du sujet original.
Attention
Un bloc personnalisé doit être appelé pour s'exécuter. Si la figure ne s'affiche pas, vérifier que l'appel (carré, triangle…) est bien présent dans le programme principal, sous le chapeau quand le drapeau vert est cliqué — et pas seulement la définition.
Récapitulatif
| Notion | En Scratch | En mathématiques |
|---|---|---|
| Donner un nom à une suite d'instructions | Chapeau définir mon-bloc (Mes blocs) | Définir une fonction |
| Donner une entrée au bloc | Ajouter un paramètre (pastille dans le nom) | Variable de la fonction |
| Utiliser le bloc | L'appeler dans le programme principal | Calculer l'image d'une valeur |
| Comprendre un script qui utilise un bloc | Remplacer l'appel par la définition complète | Remplacer $f(x)$ par son expression |
À toi de jouer
Créer un bloc personnalisé pentagone (côté) qui trace un pentagone régulier, puis l'appeler pour tracer un pentagone de $80$ pas. On rappelle qu'un pentagone régulier a $5$ côtés.
Corrigé
Un pentagone régulier se trace en répétant $5$ fois : avancer, puis tourner de l'angle extérieur $\dfrac{360^{\circ}}{5} = 72^{\circ}$.
Sur la scène, le lutin trace un pentagone régulier.
Le même bloc pentagone (côté) permettrait de tracer un pentagone de n'importe quelle taille : il suffit de changer le nombre à l'appel.
Astuce
Projet de démarrage — Le projet contient les trois blocs personnalisés du tuto : carré (côté), triangle (côté) et pentagone (côté). Appuie sur le drapeau vert pour les trois carrés emboîtés, sur la touche t pour la rosace de triangles, et sur la touche p pour le pentagone. Ouvre-le dans Scratch avec Fichier > Importer depuis votre ordinateur.
?
Remarque
Maintenant que tu sais créer et appeler tes propres blocs, le prochain chapitre, Lire et modifier un programme, t'apprend à analyser un script de brevet qui en contient : prédire ce qu'il fait, repérer une erreur et le modifier.