Le booléen, pas évident à dire ça, cependant c'est assez simple à expliquer. Vous en utilisez pratiquement tout le temps dans les events, il s'agit des Switch ou interrupteur.
Le booléen est un type de variable le plus élémentaire,
car il n'a que 2 états , soit Vrai soit Faux. Les interrupteurs utilisés dans les commandes événementielles, sont définis dans un tableau de booléens, se nommant :
- Code:
-
$game_switches
Le plus simple pour imaginer le fonctionnement d'un booleen, est le fonctionnement d'un interrupteur, pour une lampe par exemple. Mais attention, ne pas confondre l'état de l'interrupteur (ON,OFF) et le résultat (Allumé, etteint), car dans vos couloir, il ya plusieur interrupteur pour une meme lampe, certains sont ON d'autre OFF, et pourtant la lampe, n'est pas forcément etteinte ou allumée.
En Ruby, les valeurs d'un booléen sont true ou false (Vrai ou faux)
Le type booléen est dans le principe quelque chose de très simple, du point de vue variable. Hors son utilisation peut s'avérer parfois complexe, car il permet de répondre à des conditions. Toutes les comparaison de valeurs amméne à un résultat booléen :
Par exemple : j'ai un sac contenant 4 pommes et 2 bierres.
Une personne me dit : tu as exactement 3 pommes dans ton sac.
Je lui réponds : Faux
Une personne me dit : tu as plus de 3 pommes dans ton sac.
Je lui réponds : Vrai
Une personne me dit : Tu as exactement 3 pommes et exactement 2 bierres.
Je lui réponds : Faux
Une personne me dit : Tu as exactement 3 pommes ou exactement 2 bierres.
Je lui réponds : Vrai
Maintenant les mêmes exemples en Ruby :
- Code:
-
def comparaison1
iNbPomme = 4
iNbBierre = 2
bResultat = iNbPomme == 3
# bResultat contient false
end
def comparaison2
iNbPomme = 4
iNbBierre = 2
bResultat = iNbPomme > 3
# bResultat contient true
end
def comparaison3
iNbPomme = 4
iNbBierre = 2
bResultat = iNbPomme == 3 and iNbBierre == 2
# bResultat contient false
end
def comparaison4
iNbPomme = 4
iNbBierre = 2
bResultat = iNbPomme == 3 or iNbBierre == 2
# bResultat contient true
end
Peut-être que certains sont déjà largué, je vais donc vous expliquez les opérateurs logiques (==, <, >, or, and,...). Ces opérateurs permettent de faire des calculs sur des variables et d'en ressortir un résultat booléen :
X > Y sera égale à true si X est supérieur à Y, et false si ce n'est pas le cas. C'est le même fonctionnement pour les comparaison de valeur.
/!\ Attention, une très grande source d'erreur réside dans le == souvent remplacé par inadvertence par =, ce qui aulieu de faire une comparaison, provoque une affectation.Les comparateurs :== : égale
!= : diférent
< : Strictemet inférieur
<= : Inférieur ou égale
> : Strictement Supérieur
>= : Supérieur ou égale
Les tables opérateurs :- and
false and false donne false
false and true donne false
true and false donne false
true and true donne true
- or
false or false donne false
false or true donne true
true or false donne true
true or true donne true
- xor
false xor false donne false
false xor true donne true
true xor false donne true
true xor true donne false
- not
not false donne true
not true donne false
- ? :
true ? X : Y donne X
false ? X : Y donne Y
Avec ceci, vous avez l'ensemble des possiblités de calcul en booléen, mais je vais mettre quelques exemples sumplémentaires, pour plus de clarté.
- Code:
-
def exemple1
iNbPomme = 5
iNbBierre = 6
iNbVerre = 4
bResultat = iNbBierre > iNbVerre
# bResultat contient true
end
def exemple2
iNbPomme = 5
iNbBierre = 6
iNbVerre = 4
bResultat = iNbBierre > 4 and iNbVerre > 4
# bResultat contient false, car true and false donne false
end
def exemple3
iNbPomme = 5
iNbBierre = 6
iNbVerre = 4
bResultat = iNbBierre > 4 or iNbVerre > 4
# bResultat contient true, car true or false donne true
end
def exemple4
iNbPomme = 5
iNbBierre = 6
iNbVerre = 4
bResultat = ( iNbBierre > iNbVerre ? iNbPomme : 0 )
# bResultat contient 5
end
Les exercices que je pourrais faire serait exactement de la même forme que les exemples ci-dessus, donc, je ne vois pas trop l'interret d'en mettre.
Mais si il ya des questions, il ne faut pas hésiter à les poser.
Prochain cours : la strusture
if