Aller au contenu

Programmation

Programmation de base

La programmation de base des robots LEGO Mindstorms repose sur une compréhension claire des blocs de programmation. Ces blocs sont des composants logiciels qui, lorsqu'ils sont assemblés, forment les instructions pour le robot. Nous allons explorer les différentes catégories de blocs et leur utilisation.

Ce chapitre est largement issu de l’aide disponible directement dans le programme Minstorms.

Blocs moteur

Les blocs moteurs sont des outils essentiels pour la commande et la récupération d'informations des moteurs. Ils offrent une variété de fonctionnalités, allant de la rotation du moteur à la surveillance de sa vitesse et de sa position.

Faire tourner le moteur pendant une durée

Il est possible de faire tourner un moteur pour une durée déterminée, en fonction d'un nombre spécifié de rotations, de secondes ou de degrés. La vitesse de rotation est contrôlée par le bloc "Définir la vitesse", avec une valeur par défaut fixée à 75%.

Démarrage du moteur

Pour démarrer le moteur, on le fait tourner dans un sens ou dans l'autre jusqu'à la réception d'une instruction ultérieure ou l'arrêt du programme.

Arrêt du moteur

Commande l'arrêt du moteur. Cela se fait par défaut avec une tentative de maintien de la position actuelle.

Définir la vitesse du moteur

La vitesse d'un moteur peut être définie sur une échelle allant de -100% à 100%. Une valeur négative entraînera une rotation inverse à celle des aiguilles d'une montre. La vitesse par défaut est réglée à 75%.

Maintenir la position à l'arrêt

Ce paramètre détermine le comportement du moteur à la fin de sa commande en cours. Il peut soit se débloquer, soit maintenir activement sa position.

Commande de rotation du moteur à une vitesse spécifiée

Ce bloc fait tourner le moteur à une vitesse déterminée jusqu'à l'interruption par une nouvelle instruction ou la fin du programme. Une valeur de vitesse négative entraînera une rotation en sens inverse des aiguilles d'une montre.

Démarrage du moteur à une puissance spécifiée

Contrairement aux blocs de vitesse, ce bloc fait tourner le moteur à un pourcentage de puissance donné, maintenant un niveau de puissance constant sans régulation. Une valeur de puissance négative entraînera une rotation en sens inverse des aiguilles d'une montre.

Réinitialisation des degrés du moteur

Ce bloc remet à zéro le compteur de degrés du moteur, permettant de suivre la position relative du moteur depuis sa position initiale.

Lecture des degrés parcourus par le moteur

Ce bloc affiche le nombre de degrés que le moteur a parcouru depuis le début du programme ou depuis la dernière réinitialisation. Le compteur de degrés augmente avec la rotation dans le sens des aiguilles d'une montre et diminue dans le sens inverse.

Affichage de la vitesse actuelle du moteur

Ce bloc indique la vitesse actuelle d'un moteur en pourcentage, reflétant la vitesse réelle plutôt que la vitesse programmée.

Blocs de déplacement

Les blocs de déplacement sont conçus pour contrôler deux moteurs de manière synchronisée, facilitant ainsi le déplacement des bases motorisées. Il est important de noter que seuls deux moteurs identiques peuvent être synchronisés, tels que deux gros moteurs.

Déplacement pendant une durée déterminée

Ce bloc permet de déplacer un modèle vers l'avant ou vers l'arrière pour une durée spécifiée, mesurée en secondes, degrés ou rotations. Pour l'associer aux bons moteurs, utilisez le bloc "Définir les moteurs de déplacement" en alignant les ports du modèle avec ceux des gros moteurs, généralement B pour le gauche et C pour le droit. La vitesse des moteurs est réglée via le bloc "Définir la vitesse de déplacement", avec une vitesse par défaut établie à 50%.

Déplacement avec un angle pendant une durée

Ce bloc dirige le modèle pour un temps donné, avec un angle précis, selon le nombre défini de secondes, degrés ou rotations. Les ports des gros moteurs doivent être configurés à l'aide du bloc "Définir les moteurs de déplacement", avec les ports B et C comme valeurs par défaut pour le moteur gauche et droit respectivement. La vitesse est également déterminée par le bloc "Définir la vitesse de déplacement", fixée par défaut à 50%.

Arrêt du déplacement

Ce bloc est utilisé pour stopper immédiatement tout mouvement. Il nécessite la configuration des ports des gros moteurs correspondants via le bloc "Définir les moteurs de déplacement", avec les ports B et C par défaut pour le gauche et le droit.

Configuration des moteurs de déplacement

Ce bloc spécifie quels moteurs sont utilisés pour le déplacement. Le premier port mentionné correspond au moteur gauche, et le second au moteur droit, avec B et C comme réglages par défaut.

Maintien de la position des moteurs de déplacement à l'arrêt

Ce bloc détermine le comportement des moteurs de déplacement à la fin d'une commande. Ils peuvent soit se relâcher, soit maintenir activement la position actuelle à l'arrêt.

Déplacement avec un angle à une vitesse spécifiée pendant une durée

Ce bloc permet de déplacer un modèle à une vitesse et un angle définis, sur une durée spécifiée en secondes, degrés ou rotations. Les ports B et C sont utilisés par défaut pour les gros moteurs, et doivent être configurés via le bloc "Définir les moteurs de déplacement".

Déplacement à une vitesse spécifiée pendant une durée

Ce bloc commande le déplacement d'un modèle à une vitesse déterminée pour chaque moteur, sur une durée exprimée en secondes, degrés ou rotations. La première valeur indique la vitesse du moteur gauche, et la seconde celle du moteur droit. Les ports B et C sont les réglages par défaut pour les gros moteurs et doivent être ajustés avec le bloc "Définir les moteurs de déplacement".

Démarrage du déplacement avec un angle à une vitesse définie

Ce bloc initie le déplacement d'un modèle à une vitesse et un angle précisés, et continue jusqu'à la réception d'une nouvelle commande ou l'arrêt du programme. Les ports B et C sont les valeurs par défaut pour les gros moteurs et doivent être configurés avec le bloc "Définir les moteurs de déplacement".

Démarrage du déplacement à une vitesse définie

Ce bloc actionne le déplacement d'un modèle à une vitesse spécifique pour chaque moteur, et ce, jusqu'à la réception d'une nouvelle commande ou l'arrêt du programme. La vitesse du moteur gauche est définie par la première valeur, tandis que celle du moteur droit est définie par la seconde. Les ports B et C sont les valeurs par défaut pour les gros moteurs et doivent être ajustés à l'aide du bloc "Définir les moteurs de déplacement".

Blocs d'affichage

Les blocs d'affichage sont conçus pour présenter des éléments textuels ou graphiques sur l'écran de la brique EV3.

Affichage d'une image pour une durée limitée

Ce bloc affiche une image sélectionnée sur l'écran de la brique EV3 pour une durée déterminée en secondes.

Affichage permanent d'une image

Ce bloc permet d'afficher une image choisie sur l'écran de la brique EV3. L'image reste visible jusqu'à ce qu'un autre bloc d'affichage la remplace, que l'écran soit effacé, ou que le programme se termine.

Affichage de texte sur une ligne spécifique

Ce bloc affiche le texte indiqué à une ligne précise de l'écran de la brique EV3. Chaque ligne a une hauteur de 10 pixels. Le texte demeure affiché jusqu'à ce qu'il soit remplacé par un autre bloc d'affichage, que l'écran soit nettoyé ou que le programme s'arrête.

Affichage de texte à des coordonnées définies avec une police spécifique

Ce bloc affiche le texte spécifié avec la police choisie aux coordonnées XY déterminées sur l'écran de la brique EV3. Le texte reste à l'écran jusqu'à ce qu'il soit remplacé par un autre bloc d'affichage, que l'écran soit effacé, ou que le programme se termine.

Effacement de l'affichage

Ce bloc efface tout contenu présent sur l'écran de la brique EV3.

Définition du témoin d'état

Ce bloc configure le témoin d'état de la brique EV3 en définissant sa couleur et son mode de clignotement. Les options disponibles incluent vert, rouge, orange, clignotement vert, clignotement rouge et clignotement orange.

Blocs son

Les blocs son sont utilisés pour émettre des sons à travers le haut-parleur de la brique EV3, offrant ainsi une interaction auditive pendant l'exécution des programmes.

Jouer un son jusqu'à la fin

Ce bloc joue intégralement le son sélectionné sur la brique EV3 jusqu'à ce qu'il se termine complètement.

Démarrer un son

Ce bloc démarre le son choisi sur la brique EV3 et permet à la séquence de programmation de se poursuivre sans attendre la fin du son.

Jouer un bip pendant une durée déterminée

Ce bloc émet un bip sonore sur la brique EV3 pour une durée précise, mesurée en secondes.

Commencer à jouer un bip

Ce bloc joue un bip sur la brique EV3 qui continuera jusqu'à ce qu'une nouvelle commande soit donnée au haut-parleur ou que le programme arrive à son terme.

Arrêter tous les sons

Ce bloc interrompt immédiatement tous les sons qui sont en train d'être joués sur la brique EV3.

Régler le volume

Ce bloc permet de définir le volume de sortie du son sur la brique EV3, avec un niveau par défaut réglé à 100%.

Blocs événements

Les blocs événements, ou blocs chapeau, sont les éléments de base qui déclenchent l'exécution d'une pile de programmation en réponse à des événements spécifiques. Ils sont toujours placés en tête de pile et ne peuvent pas être suivis d'autres blocs chapeau.

Les blocs évènement se déclenchent uniquement lorsque l’évènement se produit. Tant que la situation ne change pas, il ne se re-déclenchent pas.

Au lancement du programme

Ce bloc exécute une séquence d'instructions attachées dès le démarrage du programme. Le programme peut être lancé via le bouton "Télécharger et exécuter" ou directement depuis la brique EV3.

Quand la couleur est détectée

Ce bloc réagit lorsque le capteur de couleur identifie une couleur prédéfinie, comme le noir, le bleu, le vert, le jaune, le rouge, le blanc, ou le marron. Il s'active une seule fois pour chaque détection de la couleur spécifiée.

Lors d'une pression sur le capteur tactile

Ce bloc s'exécute quand le capteur tactile est pressé ou relâché, se déclenchant uniquement à l'activation ou la désactivation du capteur.

Quand la distance est mesurée

Ce bloc intervient lorsque la distance mesurée par le capteur à ultrasons par rapport à un objet répond à un critère spécifique, qu'elle soit inférieure, supérieure, égale, ou qu'elle change par rapport à une distance donnée en centimètres ou en pouces.

Lorsque la proximité est évaluée

Ce bloc se déclenche quand la proximité d'un objet par rapport au capteur infrarouge atteint un seuil défini, que ce soit en dessous, au-dessus, égal ou variant plus que la proximité spécifiée.

Quand le bouton de la télécommande infrarouge est pressé

Ce bloc agit lorsque le capteur infrarouge détecte une pression sur un bouton de la télécommande configuré sur un canal donné. Il s'active seulement lors de la pression du bouton.

Quand l'angle est mesuré par le capteur gyroscopique

Ce bloc est exécuté quand l'angle mesuré par le capteur gyroscopique est inférieur, supérieur, égal, ou change par rapport à un angle spécifié.

Lorsque le bouton de la brique EV3 est pressé

Ce bloc répond à la pression ou au relâchement d'un bouton spécifique sur la brique EV3. Il ne se réactive pas tant que l'état du bouton ne change pas.

Quand une condition booléenne est vraie

Ce bloc exécute les instructions attachées uniquement quand une condition booléenne prédéfinie est vraie.

À la réception d'un message

Ce bloc lance les instructions attachées lorsqu'un message spécifique est reçu, soit par le biais du bloc "Diffuser le message", soit par "Diffuser le message et attendre".

Diffuser le message

Ce bloc envoie un message spécifié et permet l'exécution immédiate du bloc suivant dans la pile, sans attendre que les autres piles de programmation réagissent au message.

Diffuser le message et attendre

Ce bloc diffuse un message spécifié et attend que toutes les piles de programmation qui écoutent ce message aient terminé leur exécution avant de continuer avec le bloc suivant.

Quand le chronomètre dépasse une valeur

Ce bloc se déclenche quand le chronomètre atteint ou dépasse une valeur donnée. Il ne s'active qu'une seule fois pour l'événement spécifié.

Blocs de contrôle

Les blocs de contrôle sont des éléments fondamentaux en programmation qui permettent de gérer le flux d'exécution d'un programme. Ils introduisent des concepts tels que l'attente, les boucles et les instructions conditionnelles, permettant ainsi de créer des algorithmes plus complexes et dynamiques.

Attendre pendant une durée définie

Ce bloc suspend l'exécution de la pile de programmation pour une durée spécifiée en secondes, qui peut être exprimée par un nombre entier ou décimal.

Algorithmique associée : Ce bloc implémente une temporisation, créant une pause dans le programme avant de poursuivre les instructions suivantes.

Attendre que la condition soit vraie

Ce bloc met en pause l'exécution jusqu'à ce qu'une condition booléenne spécifiée devienne vraie.

Algorithmique associée : Ce bloc crée une boucle d'attente active, souvent appelée "busy wait", qui vérifie continuellement si une condition est remplie pour continuer l'exécution.

Répéter un nombre défini de fois

Ce bloc répète l'exécution d'une série de blocs internes pour le nombre de fois indiqué avant de reprendre la suite de la pile de programmation.

Algorithmique associée : Ce bloc implémente une boucle for, une structure de contrôle qui répète les instructions un nombre précis de fois.

Répéter indéfiniment

Ce bloc crée une boucle qui répète indéfiniment les blocs internes jusqu'à ce qu'une action externe, comme l'appui sur le bouton d'arrêt ou l'exécution d'un bloc d'arrêt, intervienne.

Algorithmique associée : Ce bloc représente une boucle while avec une condition toujours vraie, ce qui crée une boucle infinie.

Répéter jusqu'à ce que la condition soit vraie

Ce bloc répète l'exécution des blocs internes jusqu'à ce que la condition booléenne spécifiée soit vraie, puis continue avec le reste de la pile de programmation.

Algorithmique associée : Ce bloc implémente une boucle while qui continue tant que la condition n'est pas satisfaite.

Si la condition est vraie, alors exécuter

Ce bloc exécute les instructions internes uniquement si la condition booléenne est vraie, avant de poursuivre avec le reste de la pile de programmation.

Algorithmique associée : Ce bloc représente une instruction conditionnelle if, exécutant des instructions seulement si une condition est remplie.

Si la condition est vraie, alors exécuter, sinon exécuter autre chose

Ce bloc exécute un ensemble d'instructions si la condition booléenne est vraie et un autre ensemble si elle est fausse, avant de continuer l'exécution du programme.

Algorithmique associée : Ce bloc introduit une structure if-else, permettant d'exécuter des instructions alternatives en fonction de la véracité d'une condition.

Arrêter les autres piles de programmation

Ce bloc arrête l'exécution de toutes les piles de programmation en cours, à l'exception de celle qui contient ce bloc.

Algorithmique associée : Ce bloc permet de gérer la concurrence entre différentes piles de programmation, en forçant l'arrêt des autres processus.

Arrêter l'exécution

Ce bloc arrête l'exécution de la pile de programmation actuelle, ou de toutes les piles, ou même de tout le programme.

Algorithmique associée : Ce bloc agit comme une instruction de sortie, terminant l'exécution de la pile de programmation ou du programme entier.

Blocs capteurs

Les blocs capteurs sont utilisés pour recueillir des informations à partir des différents capteurs connectés à la brique EV3. Ils jouent un rôle crucial dans la perception de l'environnement par le robot.

Intensité de la lumière réfléchie

Question sur l'intensité de la lumière réfléchie

Ce bloc renvoie true si l'intensité de la lumière réfléchie mesurée par le capteur de couleur correspond aux critères spécifiés (supérieure, égale ou inférieure à un pourcentage donné).

Mesure de l'intensité de la lumière réfléchie

Ce bloc indique l'intensité de la lumière réfléchie en pourcentage, ajustée en fonction de l'étalonnage du capteur de couleur.

Étalonnage de l'intensité de la lumière réfléchie

Ce bloc permet d'ajuster la sensibilité du capteur de couleur en définissant les seuils minimums et maximums pour l'intensité de la lumière réfléchie.

Réinitialisation de l'étalonnage de l'intensité de la lumière réfléchie

Ce bloc rétablit les paramètres d'étalonnage du capteur de couleur à leurs valeurs par défaut.

Détection de couleur

Attente d'une couleur spécifique

Ce bloc met en pause la pile de programmation jusqu'à ce que le capteur de couleur détecte la couleur demandée, parmi un ensemble de couleurs reconnues.

Question sur la couleur détectée

Ce bloc renvoie true si le capteur de couleur identifie la couleur spécifiée parmi celles qu'il peut reconnaître.

Identification de la couleur détectée

Ce bloc fournit la couleur actuellement détectée par le capteur de couleur, exprimée sous forme numérique, où chaque numéro correspond à une couleur spécifique.

  • 0 : Aucune couleur
  • 1 : Noir
  • 2 : Bleu
  • 3 : Vert
  • 4 : Jaune
  • 5 : Rouge
  • 6 : Blanc
  • 7 : Marron

Intensité de la lumière ambiante

Question sur l'intensité de la lumière ambiante

Ce bloc renvoie true si l'intensité de la lumière ambiante mesurée par le capteur de couleur est conforme aux critères spécifiés.

Mesure de l'intensité de la lumière ambiante

Ce bloc affiche l'intensité de la lumière ambiante captée par le capteur de couleur en pourcentage.

Capteur tactile

Attente d'une pression

Ce bloc suspend l'exécution du programme jusqu'à ce que le capteur tactile soit pressé ou relâché.

Question sur l'état du capteur tactile

Ce bloc renvoie true si le capteur tactile est actuellement pressé.

Capteur à ultrasons

Attente d'une distance spécifique

Ce bloc met en pause la pile de programmation jusqu'à ce que la distance mesurée par le capteur à ultrasons corresponde à un critère donné (inférieure, supérieure ou égale à une valeur spécifiée).

Question sur la distance mesurée

Ce bloc renvoie true si la distance mesurée par le capteur à ultrasons est conforme aux critères définis.

Mesure de la distance

Ce bloc indique la distance entre le capteur à ultrasons et un objet, en centimètres ou en pouces.

Capteur infrarouge

Attente d'une proximité spécifique

Ce bloc suspend l'exécution du programme jusqu'à ce que la proximité mesurée par le capteur infrarouge réponde à un critère défini.

Question sur la proximité

Ce bloc renvoie true si la proximité avec un objet mesurée par le capteur infrarouge est conforme aux critères spécifiés.

Mesure de la proximité

Ce bloc fournit la proximité d'un objet détectée par le capteur infrarouge, exprimée en pourcentage.

Attente de l'activation d'un bouton de balise

Ce bloc met en pause la pile de programmation jusqu'à ce que le capteur infrarouge détecte un appui sur un bouton de la télécommande, configuré sur un canal donné.

Question sur l'état du bouton de balise

Ce bloc renvoie true si le capteur infrarouge détecte que le bouton de balise spécifié est pressé sur le canal choisi.

Identification du bouton de balise pressé

Ce bloc indique quel bouton de la télécommande infrarouge est pressé, selon le canal spécifié, avec une valeur numérique correspondant à chaque combinaison de boutons.

  • 0 : Pas de bouton (balise inactive)
  • 1 : Bouton supérieur gauche
  • 2 : Bouton inférieur gauche
  • 3 : Bouton supérieur droit
  • 4 : Bouton inférieur droit
  • 5 : Les deux boutons supérieurs
  • 6 : Bouton supérieur gauche et bouton inférieur droit
  • 7 : Bouton supérieur droit et bouton inférieur gauche
  • 8 : Les deux boutons inférieurs
  • 9 : Balises actives
  • 10 : Les deux boutons gauche
  • 11 : Les deux boutons droits

Capteur gyroscopique

Attente d'un angle spécifique

Ce bloc suspend l'exécution du programme jusqu'à ce que l'angle mesuré par le capteur gyroscopique corresponde à un critère défini.

Question sur l'angle mesuré

Ce bloc renvoie true si l'angle mesuré par le capteur gyroscopique est conforme aux critères spécifiés.

Mesure de l'angle

Ce bloc affiche l'angle actuel mesuré par le capteur gyroscopique en degrés.

Réinitialisation de l'angle

Ce bloc remet à zéro la mesure de l'angle du capteur gyroscopique.

Mesure de la vitesse angulaire

Ce bloc indique la vitesse angulaire du capteur gyroscopique, exprimée en degrés par seconde.

Bouton de la brique EV3

Attente de l'activation d'un bouton de la brique

Ce bloc met en pause la pile de programmation jusqu'à ce que le bouton spécifié sur la brique EV3 soit pressé ou relâché.

Question sur l'état du bouton de la brique

Ce bloc renvoie true si le bouton spécifié sur la brique EV3 est actuellement pressé.

Identification du bouton de la brique pressé

Ce bloc fournit l'état du bouton de la brique EV3, exprimé en nombre, où chaque numéro correspond à un bouton spécifique.

  • 0 : Pas de bouton
  • 1 : Bouton gauche
  • 2 : Bouton central
  • 3 : Bouton droit
  • 4 : Bouton supérieur
  • 5 : Bouton inférieur

Chronomètre

Mesure du temps écoulé

Ce bloc indique le temps écoulé en secondes depuis le début du programme. Le chronomètre est réinitialisé à chaque redémarrage du programme.

Réinitialisation du chronomètre

Ce bloc remet à zéro le chronomètre. La valeur actuelle du chronomètre peut être consultée à tout moment avec le bloc correspondant.

Blocs opérateurs

Les blocs opérateurs sont essentiels en programmation, car ils permettent d'effectuer des opérations mathématiques et logiques avec des valeurs numériques et booléennes.

Sélection aléatoire d'un nombre

Ce bloc choisit un nombre aléatoirement dans une plage définie, incluant les valeurs extrêmes. Par exemple, pour une plage de 1 à 3, il peut renvoyer 1, 2 ou 3.

Addition

Ce bloc additionne deux valeurs numériques et renvoie le résultat.

Soustraction

Ce bloc soustrait la seconde valeur de la première et renvoie le résultat.

Multiplication

Ce bloc multiplie deux valeurs numériques et renvoie le résultat.

Division

Ce bloc divise la première valeur numérique par la seconde et renvoie le résultat.

Comparaison inférieure

Ce bloc renvoie true si la première valeur numérique est inférieure à la seconde.

Comparaison égale

Ce bloc renvoie true si la première valeur numérique est égale à la seconde.

Comparaison supérieure

Ce bloc renvoie true si la première valeur numérique est supérieure à la seconde.

Opérateur logique ET

Ce bloc renvoie true si les deux valeurs booléennes sont true.

Opérateur logique OU

Ce bloc renvoie true si au moins une des deux valeurs booléennes est true.

Opérateur logique NON

Ce bloc renvoie true si la valeur booléenne est false.

Concaténation de chaînes

Ce bloc réunit deux valeurs textuelles et renvoie le résultat. Par exemple, pour "Hello" et "World", il renvoie "HelloWorld". Pour inclure un espace, "Hello " et "World" donneront "Hello World".

Longueur d'une chaîne

Ce bloc indique le nombre de caractères présents dans la chaîne de caractères spécifiée.

Modulo

Ce bloc renvoie le reste de la division de la première valeur numérique par la seconde. Par exemple, 10 divisé par 3 renvoie un reste de 1.

Arrondi

Ce bloc arrondit le nombre spécifié au nombre entier le plus proche selon les règles d'arrondi standard.

Fonctions mathématiques

Ce bloc applique la fonction mathématique spécifiée au nombre donné et renvoie le résultat.

Blocs variables

Les blocs variables sont des composants essentiels de la programmation qui permettent de stocker et de manipuler des données sous forme de variables, de listes et de structures personnalisées.

Variable

Affichage de la valeur d'une variable

Ce bloc affiche la valeur actuelle d'une variable. Une instance de ce bloc est générée pour chaque variable créée, portant le nom de la variable correspondante.

Définition d'une variable

Définir la variable

Ce bloc assigne une valeur spécifiée à une variable, qui peut être un nombre ou une chaîne de caractères.

Modification d'une variable

Modifier la variable

Ce bloc change la valeur d'une variable par la quantité spécifiée. Si la variable est une chaîne de caractères plutôt qu'un nombre, elle est traitée comme ayant une valeur de 0 et est donc mise à jour avec la nouvelle valeur spécifiée.

Listes

Affichage de la valeur d'une liste

Ce bloc indique les données contenues dans une liste. Une version de ce bloc est créée pour chaque liste avec son nom spécifique.

Ajout d'un élément à une liste

Ce bloc ajoute un élément, qui peut être un texte ou un nombre, à la fin d'une liste spécifiée.

Suppression des éléments d'une liste

Ce bloc efface tous les éléments contenus dans une liste donnée.

Remplacement d'un élément dans une liste

Ce bloc remplace l'élément à une position donnée dans une liste par un nouvel élément, qui peut être un texte ou un nombre.

Valeur d'un élément dans une liste

Ce bloc renvoie la valeur de l'élément situé à une position spécifique dans une liste.

Longueur d'une liste

Ce bloc donne le nombre total d'éléments présents dans une liste.

Création de blocs personnalisés

Bloc définir

Ce bloc permet à l'utilisateur de créer des blocs personnalisés. Il s'agit du groupe de blocs qui sont attachés à ce bloc "Définir".

Mon bloc

Ce bloc exécute la fonctionnalité définie par l'utilisateur à travers le bloc "Définir".