12. Les listes et les boucles
Afficher une liste
page "produits" :
variable produits = ["Pomme", "Banane", "Orange"]
titre "Nos fruits"
pour chaque nom dans produits :
texte nomAjouter, retirer, compter
page "panier" :
variable panier = []
calcul total = nombre de panier
titre "Panier"
texte "{total article} dans le panier"
bouton "Ajouter une pomme"
bouton "Retirer une pomme"
quand l'utilisateur clique sur "Ajouter une pomme" :
ajouter "Pomme" à panier
quand l'utilisateur clique sur "Retirer une pomme" :
retirer "Pomme" de panier
si panier est vide :
texte "Le panier est vide"Trier, filtrer, choisir
page "catalogue" :
variable produits = [fiche avec nom "Livre" et prix 12, fiche avec nom "Stylo" et prix 2, fiche avec nom "Cahier" et prix 5]
calcul par_prix = trier produits par prix
calcul du_plus_cher = trier produits par prix decroissant
calcul pas_chers = produits dont prix est inferieur a 10
calcul vitrine = les 2 premiers de par_prix
calcul livre = premier de produits dont nom contient "Liv"
titre "Catalogue"
texte "Trouvé : {livre.nom}"
pour chaque p dans vitrine :
texte "{p.nom} : {p.prix en euros}"Grouper
page "rayons" :
variable produits = [fiche avec nom "Robe" et categorie "Mode", fiche avec nom "Lampe" et categorie "Maison", fiche avec nom "Jupe" et categorie "Mode"]
calcul rayons = grouper produits par categorie
titre "Nos rayons"
pour chaque rayon dans rayons :
soustitre rayon.nom
pour chaque p dans rayon.elements :
texte p.nomLes boucles dans une action
Dans un événement ou une fonction, on peut aussi répéter, boucler tant qu'une condition tient, et choisir selon une valeur :
page "jeu" :
variable points = 0
variable jour = "samedi"
titre "Jeu"
texte "Points : {points}"
bouton "Jouer"
quand l'utilisateur clique sur "Jouer" :
repeter 3 fois :
changer points par points + 1
tant que points est inferieur a 10 :
changer points par points + 2
selon jour :
cas "samedi" ou "dimanche" :
afficher "Bon week-end"
cas "lundi" :
afficher "Bonne semaine"arreter sort d'une boucle ; passer au suivant passe au tour suivant.