Problème incrémentation.
Dell
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
Je n'arrive pas à comprendre le résultat suivant :
pour a = 11 et b = -12
a = a+ (b++); Je doit trouver a=-1 et b=-11 alors que moi je trouve a=0 et b=-11 car pour moi la parenthèse est prioritaire donc a = a+ (-11); ensuite a= 11 -11 = 0.
Il n'y a pas d'erreur dans l'énoncé ni dans la correction, j'ai donc besoin de votre aide.
Merci d'avance =)
Je n'arrive pas à comprendre le résultat suivant :
pour a = 11 et b = -12
a = a+ (b++); Je doit trouver a=-1 et b=-11 alors que moi je trouve a=0 et b=-11 car pour moi la parenthèse est prioritaire donc a = a+ (-11); ensuite a= 11 -11 = 0.
Il n'y a pas d'erreur dans l'énoncé ni dans la correction, j'ai donc besoin de votre aide.
Merci d'avance =)
parenthèse = b;
b = b+1;
a = a + parenthèse;
Ici ça ne change rien au résultat, mais si b avait été utilisé ailleurs dans le calcul ça aurait une importance. Exemple : que vaut a + (b++) - b, et que vaut a + b - (b++) ?
c = a
c= c + b
b = b + 1
c = c - b
Cela revient donc à dire c = a + b - (b+1) = a-1
Ce n'est pas la parenthèse qui est prioritaire, mais l'opérateur ++ par rapport à +
Mais ici l'ordre de gauche à droite rentre en compte...