Section courante

A propos

Section administrative du site

Les instructions de conditionnelles en langage de programmation Ruby sont aux nombres de deux et font pensée au langage de programmation Python, Perl et Pascal:

IF

L'instruction «IF» permet le teste d'une condition et de choisir d'effectuer des instructions plutôt que d'autre dans le cas ou celle-ci serait vrai.Voici donc les syntaxes:

if expression_vrai
    instruction_exécuté_si_vrai
end

ou

if expression_vrai
    instruction_exécuté_si_vrai
else
    instruction_exécuté_si_faux
end

ou

if expression_vrai1
    instruction_exécuté_si_vrai1
elsif expression_vrai2
    instruction_exécuté_si_vrai2
... rajouter des «elsif» autant que nécessaire ...
else
    instruction_exécuté_si_faux
end

Vous y remarquerez donc après les syntaxes proposé que les instructions «else» ou «elsif» ne sont pas obligatoire. Il est également à noter qu'une condition est vrai si elle est différente de zéro et de se fait qu'il n'y a pas de symbole d'égalité classique (==, <=, >=).

CASE

Lorsqu'on effectue une série de teste répétitive sur une même variable avec différentes valeurs de la manière suivante :

if valeur == 1
 instruction1_exécuté_si_vrai1
elsif valeur == 2
 instruction_exécuté_si_vrai2
elsif valeur == 3
 instruction_exécuté_si_vrai3
else
 instruction_exécuté_si_faux
end

On devrait plutôt tenté d'utiliser l'instruction «CASE» laquelle permet une meilleure lisibilité en plus de simplifié la compréhension pour un programmeur externe à votre code. Ainsi, l'instruction CASE permet d'effectuer de nombreuses comparaisons sur un unique résultat. Voici donc sa syntaxe:

case résultat
 when valeur1 then  instruction1_exécuté_si_vrai1
 when valeur2 then  instruction_exécuté_si_vrai2
 when valeur3 then  instruction_exécuté_si_vrai3
 else  instruction_exécuté_si_faux
end

L'instruction «else» n'est pas obligatoire, il est tout de même préférable de l'inclure pour prévenir une situation anormale ou d'erreur. Il est également possible d'avoir des ensembles de valeurs appliquable comme cas. Voici un exemple :

case résultat
 when 5..9 then  instruction1;
 when 11..14 then   instruction2;
 when 10,15,16 then   instruction3;
end

Dans cette exemple les «instructions1» est exécuté si le résultat a une valeur entre 5 et 9. Ensuite, les «instructions2» est exécuté si le résultat a une valeur entre 11 et 14. Enfin, les «instructions3» est exécuté si le résultat à la valeur 10, 15 ou 16.



Dernière mise à jour : Dimanche, le 23 novembre 2014