Test if dans une affectation [Résolu]

el_teedee 498 Messages postés mercredi 7 juillet 2004Date d'inscription 13 juillet 2015 Dernière intervention - 30 août 2005 à 10:32 - Dernière réponse : Lutinore 3248 Messages postés lundi 25 avril 2005Date d'inscription 27 octobre 2012 Dernière intervention
- 30 août 2005 à 15:36
Salut,



je crois savoir que l'on peut mettre un test if dans la même instruction qu'une affectation de variable :



je voudrais mettre le résulatat d'un calcul dans une variable seulement
si le calcul répond à une condition, tout cela en une ligne, c'est
possible je crois ?



int pourcentage (mon_calcul()< 100);



c'est un truc dans le genre je crois, mais je connais pas la syntaxe exacte.
Afficher la suite 

7 réponses

Répondre au sujet
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 30 août 2005 à 10:36
+3
Utile
int pourcentage = ( condition ? valeur si vraie : valeur si fausse );

c'est ce qu'on appelle l'opérateur ternaire.

Sébastien FERRAND
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de sebmafate
el_teedee 498 Messages postés mercredi 7 juillet 2004Date d'inscription 13 juillet 2015 Dernière intervention - 30 août 2005 à 10:39
0
Utile
et tu sais s'il y'a moyen de faire deux tests à la fois ? genre >= 0 et <= 100 ?
Commenter la réponse de el_teedee
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 30 août 2005 à 10:42
0
Utile
bah oui :

int pourcentage = ( truc >= 0 && truc <= 100 ? machin : bidule );

Sébastien FERRAND
Commenter la réponse de sebmafate
el_teedee 498 Messages postés mercredi 7 juillet 2004Date d'inscription 13 juillet 2015 Dernière intervention - 30 août 2005 à 10:48
0
Utile
ah bah oui, tout con

au passage, pas moyen de trouver de réponse pour "opérateur ternaire" sur le forum.

mais apparemment c la même chose qu'en java, et c'est expliquéici
Commenter la réponse de el_teedee
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 30 août 2005 à 10:51
0
Utile
oui, c'est la même chose... d'ailleur, Java est basée sur une syntaxe C... et cet opérateur nous vient du C.
pour un peu plus de doc : http://msdn.microsoft.com/library/fre/default.asp?url=/library/fre/csspec/html/vclrfcsharpspec_7_12.asp

Sébastien FERRAND
Commenter la réponse de sebmafate
el_teedee 498 Messages postés mercredi 7 juillet 2004Date d'inscription 13 juillet 2015 Dernière intervention - 30 août 2005 à 11:18
0
Utile
merci pour ces précisions, j'essayrais d'y penser à l'avenir.



Je pense que l'on doit gagner quelques millièmes en temps d'exécution p/r à une structure de base : if () then else
Commenter la réponse de el_teedee
Lutinore 3248 Messages postés lundi 25 avril 2005Date d'inscription 27 octobre 2012 Dernière intervention - 30 août 2005 à 15:36
0
Utile
Si tu veux gagner du temps avec les conditions, je te donne une astuce: Dans une expression avec un && la condition de droite n'est pas evaluée si la condition de gauche est FALSE. Dans une expression avec un || la condition de droite n'est pas evaluée si la condition de gauche est TRUE. En sachant ca, tu peux gagner du temps en mettant la condition la plus susceptible d'etre vraie ou fausse ( selon ce que tu veux faire ) en premier.
Commenter la réponse de Lutinore

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.