Elm - Prise de décision
Les structures de prise de décision exigent que le programmeur spécifie une ou plusieurs conditions à évaluer ou à tester par le programme, ainsi qu'une ou plusieurs instructions à exécuter si la condition est jugée vraie, et éventuellement d'autres instructions à exécuter si le condition est considérée comme fausse.
Vous trouverez ci-dessous la forme générale d'une structure de prise de décision typique trouvée dans la plupart des langages de programmation
![](https://post.nghiatu.com/assets/tutorial/elm/images/decision_making.jpg)
Une construction décisionnelle évalue une condition avant que les instructions ne soient exécutées. Les constructions décisionnelles dans Elm sont classées comme suit -
Sr. No. | Déclaration | La description |
---|---|---|
1 | if ... then ... else instruction | L'instruction if consiste en une expression booléenne suivie de then qui est exécutée si l'expression retourne true et else qui est exécutée si l'expression renvoie false |
2 | instruction if imbriquée | Vous pouvez en utiliser un si ... alors ... sinon dans un autre si. |
3 | déclaration de cas | Teste la valeur d'une variable par rapport à une liste de valeurs. |
if ... then ... else Déclaration
le if…thenconstruct évalue une condition avant qu'un bloc de code ne soit exécuté. Si l'expression booléenne a la valeur true, le bloc de code à l'intérieur de l'instruction then sera exécuté. Si l'expression booléenne est évaluée à false, le bloc de code à l'intérieur de l'instruction else sera exécuté.
Contrairement aux autres langages de programmation, dans Elm, nous devons fournir la branche else. Sinon, Elm lancera une erreur.
Syntaxe
if boolean_expression then statement1_ifTrue else statement2_ifFalse
Illustration
Essayez l'exemple suivant dans le terminal REPL.
> if 10>5 then "10 is bigger" else "10 is small"
"10 is bigger" : String
Imbriqué si
L'instruction if imbriquée est utile pour tester plusieurs conditions. La syntaxe d'une instruction if imbriquée est donnée ci-dessous -
if boolean_expression1 then statement1_ifTrue else if boolean_expression2 then statement2_ifTrue else statement3_ifFalse
Illustration
Essayez l'exemple suivant dans Elm REPL -
> score=80
80 : number
> if score>=80 then "Outstanding" else if score > = 70 then "good" else "average"
"Outstanding" : String
Déclaration de cas
L'instruction case peut être utilisée pour simplifier l'instruction if then else. La syntaxe d'une instruction case est la suivante -
case variable_name of
constant1 -> Return_some_value
constant2 -> Return_some_value
_ -> Return_some_value if none of the above values match
L'instruction case vérifie si la valeur d'une variable correspond à un ensemble prédéfini de constantes et renvoie la valeur correspondante. Notez que la valeur renvoyée par chaque cas doit être du même type. Si la valeur des variables ne correspond à aucune des constantes données, le contrôle est passé à * default * (indiqué par // _) et la valeur correspondante est renvoyée.
Illustration
Essayez l'exemple suivant dans Elm REPL -
> n = 10
10 : number
> case n of \
| 0 -> "n is Zero" \
| _ -> "n is not Zero"
"n is not Zero" : String
L'extrait de code ci-dessus vérifie si la valeur de n est zéro. Le contrôle est passé à la valeur par défaut, qui renvoie la chaîne «n n'est pas zéro».