Source : Scratch Wiki en français

À ne pas confondre avec
 Article homonyme :
Ne doit pas être confondu avec <() contient () ?>, un bloc permettant de vérifier si du texte contient un certain texte.

Bloc « <[ v] contient () ?> »


<[ v] contient () ?> est un bloc booléen de la catégorie Données.

bloc Scratch <[ v] contient () ?>
Contraste élevé
Original
<[ v] contient () ?>
<[ v] contient () ?>
Catégorie
Données
Forme
Bloc booléen
Ajouté
Scratch 1.0
Entrées
2 (entrée déroulante et Entrée nombre)
Code du bloc
<[ v] contient () ?>

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 () ?>
Info
 Info :
Tout bloc Scratch doit être placé dans des balises
[scratchblocks]
et
[/scratchblocks]
pour être affiché en tant que bloc dans un post.


Voir aussi

Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.