>VerseTrainer

8. Premier bonus actif

moyen
optionbouclesfondamentaux

Le joueur a plusieurs emplacements de bonus (potions, buffs temporaires...), représentés par un tableau d'entiers : -1 signifie « emplacement vide », toute autre valeur (positive ou nulle) est la puissance d'un bonus actif à cet emplacement.

Écris une fonction FirstActiveBuff qui parcourt les emplacements de gauche à droite et renvoie la puissance du premier bonus actif trouvé — ou -1 si aucun emplacement n'est occupé.

Exemple

FirstActiveBuff(array{-1, -1, 5, -1, 9}) renvoie 5 (le premier emplacement occupé, on ignore le 9 qui vient après). FirstActiveBuff(array{-1, -1, -1}) renvoie -1 (rien n'est actif).

Utilise le type option (?int) pour représenter « j'ai peut-être déjà trouvé un bonus » pendant que tu parcours le tableau : false tant que rien n'est trouvé, option{Value} dès qu'un bonus actif apparaît. Une fois la boucle terminée, déballe le résultat pour savoir quoi renvoyer.

Indices

Chargement de l'éditeur…