
Trop programmer peut faire perdre le sens de la logique.
chris et nico ont raison. ya pas de bug.
suffit d'essayer dans un autre langage (javascript, python) ou meme avec la calculatrice windows. je vous conseille celle là : http://www.penguinbyte.com/apps/pbwebst ... erCalc.zip
allez dans menu -> view -> history view
puis saisir a=-5
puis saisir a-a-a
puis saisir a-(a-a)
[EDIT]
ah tu as répondu juste avant... donc si t'as compris tant mieux.
suffit d'essayer dans un autre langage (javascript, python) ou meme avec la calculatrice windows. je vous conseille celle là : http://www.penguinbyte.com/apps/pbwebst ... erCalc.zip
allez dans menu -> view -> history view
puis saisir a=-5
puis saisir a-a-a
puis saisir a-(a-a)
[EDIT]
ah tu as répondu juste avant... donc si t'as compris tant mieux.

y'a quand même une sacrée différence entre l'opérateur moins dans une expression et le même en tant que soustraction suivi d'une affectation.
@Flype
ouvre une console javascript comme tu le suggères. avec mozilla c'est dans le menu outil -> dev web -> console js
tape "a = 5" pour initialiser la variable
-> ca va afficher 5
maintenant tape "a -= a - a"
-> ca affiche aussi 5
j'ai pas de compilo C sous la main mais je suis persuadé d'obtenir la même chose...
Dri
@Flype
ouvre une console javascript comme tu le suggères. avec mozilla c'est dans le menu outil -> dev web -> console js
tape "a = 5" pour initialiser la variable
-> ca va afficher 5
maintenant tape "a -= a - a"
-> ca affiche aussi 5
j'ai pas de compilo C sous la main mais je suis persuadé d'obtenir la même chose...
Dri
ben excuses moi mais meme dans javascript les résultats sont les mêmes qu'en purebasic.
essayes ce code javascript, enregistre le comme test.html et double clic dessus.
si on prends le même énoncé de départ (début du post)
càd :
çà correspond, non ?
essayes ce code javascript, enregistre le comme test.html et double clic dessus.
Code : Tout sélectionner
<script>
a=-5;
a=a-(a-a);
b=-5;
b=b-b-b;
c=-5;
c-=c-c;
document.write(a+"<br/>"+b+"<br/>"+c);
</script>
càd :
Code : Tout sélectionner
a = -5
a - (a - a)
Debug a
a = -5
a - a - a
Debug a
si tu décomposes :
a = -5
a - (a - a)
qui est la même expression que :
a = -5
a = a - (a - a)
donc
a = -5 - ( -5 - -5 )
a = -5 - ( -5 + 5 )
a = -5 - ( 0 )
a = -5
EN REVANCHE
si tu décomposes :
a = -5
a - a - a
qui est la même expression que :
a = -5
a = a - a - a
donc
a = -5 - -5 - -5
a = -5 +5 +5
a = -5 +10 ; ou même 0 +5
a = 5
CONCLUSION
pour moi ya pas de problème!
a = -5
a - (a - a)
qui est la même expression que :
a = -5
a = a - (a - a)
donc
a = -5 - ( -5 - -5 )
a = -5 - ( -5 + 5 )
a = -5 - ( 0 )
a = -5
EN REVANCHE
si tu décomposes :
a = -5
a - a - a
qui est la même expression que :
a = -5
a = a - a - a
donc
a = -5 - -5 - -5
a = -5 +5 +5
a = -5 +10 ; ou même 0 +5
a = 5
CONCLUSION
pour moi ya pas de problème!