Booléennes VB.net [Résolu]

- - Dernière réponse :  Utilisateur anonyme - 23 avril 2017 à 18:23
Bonjour, j'aimerais savoir pourquoi


Dim a As Boolean = True

While Not a ' pourquoi ça ne fonctionne pas ?


Console.WriteLine("go")



End While



Dim a As Boolean = False

While Not a ' et la ça fonctionne ...


Console.WriteLine("go")



End While


et je voulais savoir aussi pourquoi

While 1

est considéré comme Vrai

et que

While 0


et considéré comme Faux ? normalement un booléenne est Vrai ou Faux ?

merci
Afficher la suite 

Votre réponse

4 réponses

Messages postés
14289
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
14 décembre 2018
0
Merci
Hello,

De manière générale, une boucle while s'écrit comme ceci:

while(condition_booleenne)
intructions // code exécuté si la condition est vérifiée
end while


Pour que les instructions soient exécutées, il faut que la condition soit vérifiée, c'est-à-dire qu'il faut que
condition_booleenne == True


Dans tes 2 premiers cas, on a
condition_booleenne = Not a


Ce qui revient au test suivant:
Not a == True

Ici, c'est de la logique booléenne. Pour valider ce test, il faut que
a
soit à False. Je te laisse voir la table de vérité de la fonction NOT

Pour le dernier cas, il faut regarder la doc de VB.Net pour le type Boolean. Extrait:
Lorsque Visual Basic convertit des valeurs de type de données numériques en Boolean, 0 devient False et toutes les autres valeurs deviennent True. Lorsque Visual Basic convertit des valeurs Boolean en types numériques, False devient 0 et True devient -1.


@+ 
Buno, Modo CS-CCM 
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai... 
The urgent is done, the impossible is underway. For miracles, provide for a delay...
Commenter la réponse de BunoCS
0
Merci
"Pour le dernier cas, il faut regarder la doc de VB.Net pour le type Boolean. Extrait: "

While 6 ' Vrai , While 0 Faux , correct ?

console.writeline("go")

End While



Dim a as boolean = -1

While a ' Vrai et si je met le boolean 0 c'est Faux , correct ?

console.writeline("go")

End While


Pour que les instructions soient exécutées, il faut que la condition soit vérifiée, c'est-à-dire qu'il faut que
condition_booleenne == True



Dans tes 2 premiers cas, on a
condition_booleenne = Not a



Dim a As Boolean = True

While Not a ' pourquoi ça ne fonctionne pas ?


Console.WriteLine("go")



End While


Normalement c'est bon non ? car le Boolean est Vrai et on veux qu'il soit Faux et il est pas Faux du coup la condition est Vrai non ?
Commenter la réponse de Utilisateur anonyme
Messages postés
14289
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
14 décembre 2018
0
Merci
1 et 2 sont corrects. Tu peux tester pour voir le résultat.
Dernier cas, pas bon.
car le Boolean est Vrai et on veux qu'il soit Faux
Non. On veut que
Not a
soit Vrai. Donc que
a
soit Faux.
vb95
Messages postés
1727
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 décembre 2018
> Utilisateur anonyme -
Avant de poser les questions si tu essayais !
il faudrait que tu y mettes du tien et non que tout te tombe dans la main !
cs_ShayW
Messages postés
3244
Date d'inscription
jeudi 26 novembre 2009
Dernière intervention
13 décembre 2018
> Utilisateur anonyme -
Salut Hixale

au chapitre de While il est dit : Eh oui, lorsque vous écrivez MaVariable = 10, le programme va faire un petit calcul dans son coin afin de vérifier que la valeur de MaVariable est bien égale à 10 ; si c'est le cas, il transforme cela en un booléen de type Vrai.

"si c'est le cas, il transforme cela en un booléen de type Vrai"


il faut comprendre ce que veut dire cela
ce n'est pas MaVariable
mais l'expression booléennne du while MaVariable = 10

While expression booléenne

end while

ici l'expression booléenne est est ce que MaVariable = 10 ?

Bonjour vb95
vb95
Messages postés
1727
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 décembre 2018
> cs_ShayW
Messages postés
3244
Date d'inscription
jeudi 26 novembre 2009
Dernière intervention
13 décembre 2018
-
bonjour à toi aussi cs_Shayw et bon dimanche
Utilisateur anonyme > vb95
Messages postés
1727
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 décembre 2018
-
Avant de poser les questions si tu essayais !
il faudrait que tu y mettes du tien et non que tout te tombe dans la main !


bah j'ai essayer et ça fonctionne pas c'est pour ça que je demande si il y a autre chose
Utilisateur anonyme > Utilisateur anonyme -
il faut comprendre ce que veut dire cela
ce n'est pas MaVariable
mais l'expression booléennne du while MaVariable = 10

While expression booléenne

end while

Ok merci :)
Commenter la réponse de BunoCS
-1
Merci
Sujet résolu ;)
Commenter la réponse de Utilisateur anonyme

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.