Source: Scratch Wiki en français
Ne doit pas être confondu avec
<() contient () ?>, un bloc permettant de vérifier si du texte contient un certain texte.Description
Ce bloc renvoie « true » (vrai) si l'élément voulu est contenu par la liste choisie, et « false » (faux) si ce n'est pas le cas.
Exemples
- Ce bloc permet de vérifier si un élément appartient déjà à une liste créée, pour éventuellement l'ajouter ensuite :
demander [Que souhaitez-vous ajouter à la liste de courses ?] et attendre si <[liste de courses v] contient (réponse) ?> alors dire (regrouper (regrouper [Ce produit (] et (réponse)) et [) est déjà dans la liste de courses !] sinon ajouter (réponse) à [liste de courses v]::list dire (regrouper (regrouper [Ça y est, j'ai ajouté ] et (réponse)) et [ à la liste de courses !]) end
- Sinon ce bloc peut servir à pas mal de choses en condition, par exemple :
si <[liste v] contient [blablabla] ?> alors ajouter (longueur de [liste v]) à [variable v]::variables basculer sur le costume [costume2 v] arrêter tous les sons end
Alternatives
Il existe deux alternatives :
- On peut définir un bloc semblable personnalisé :
définir liste contient (texte) mettre [compteur v] à (1) mettre [nombre de fois contenu v] à (0) mettre [résultat v] à [false] répéter (longueur de [liste v]) fois si <(élément (compteur::variables) de [liste v]) = (texte)> alors ajouter (1) à [nombre de fois contenu v]::variables mettre [résultat v] à [true] sinon ajouter (1) à [compteur v]::variables fin fin
(position de [] dans [ v]). Utilisé comme entrée booléenne, il se comporte un peu comme le bloc<[ v] contient () ?>avec un petit avantage : là où ce dernier ne renvoie que « true » (vrai) ou « false » (faux), le bloc va renvoyer 0 si l'élément recherché dans la liste ne s'y trouve pas mais va renvoyer le numéro de sa position s'il s'y trouve.
Sur le forum Scratch
Il est possible d'insérer ce bloc sur le forum Scratch via du BBCode :
<[ v] contient () ?>
Sera alors rendu :
<[ v] contient () ?>
Tout bloc Scratch doit être placé dans des balises
[scratchblocks]et
[/scratchblocks]pour être affiché en tant que bloc dans un post.
Autre
Depuis le 28 juin 2023, il existe une version à contraste élevé de ce bloc, dont voici l'apparence :
<[ v] contient () ?> Voir aussi
blocs de données :: variables