Source: Scratch Wiki en français


Le bloc « <[ v] contient () ?> »


Attention
 Attention :
Ne doit pas être confondu avec <() contient () ?>, un bloc permettant de vérifier si du texte contient un certain texte.
<[ v] contient () ?>

<[ v] contient () ?>

Catégorie : Listes
Type : Bloc booléen
Ajouté dans : Scratch 1.0
Entrées : 1 (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 les forums

Sur les forums de Scratch, vous pouvez intégrer des blocs Scratch grâce au BBCode. Voici le code nécessaire pour insérer ce bloc :

<[ v] contient () ?>

Ce qui donnera :

<[ v] contient () ?>
Info
 Info :
N'oubliez pas que le script devra être entouré des balises
[scratchblocks]
et
[/scratchblocks]
pour être affiché en tant que bloc dans le message.
Voir les blocs du forum pour plus d'informations.

Autre

Info
 Info :
Depuis le 28 juin 2023, il existe une version à contraste élevé de ce bloc, dont voici l'apparence : <[ v] contient () ?>

Voir aussi

Ce bloc fait partie de la catégorie des blocs de données :: variables
Tous les blocs de cette catégorie :