Page 1 sur 1

parentheses recalcitrantes ( juste pour les pervers! )

Posté : 13 juin 2012, 17:29
par Jean-Francois_Koenig
bonjour,

j'ai un soucis de calcul en utisant les parentheses,
je ne vois pas trop quelles sont les regles a respecter dans les calculs de ce point de vue

par exemple je ne comprends pas pourquoi les calculs marchent ou pas dans le script ci dessous

****************************************************************************************************************
print ""
y=20
x=150
m=2
c=-400
r1=(m*y+x-m*c)/(m*m+1)
r2=((m*y)+x-(m*c))/((m*m)+1)
print " x = " x
print " y = " y
print " m = " m
print " c = " c
print " r1=(m*y+x-m*c)/(m*m+1)= " r1
print " r2=((m*y)+x-(m*c))/((m*m)+1) = " r2
print ""
print ""

pause
s1=(m*y+x-m*c)
s2=((m*y)+x-(m*c))
print " x = " x
print " y = " y
print " m = " m
print " c = " c
print "s1=(m*y+x-m*c) = " s1
print "s2=((m*y)+x-(m*c)) = " s2
print ""
print ""

pause
t1=(m*m+1)
t2=((m*m)+1)
print " m = " m
print " t1=(m*m+1) = " t1
print " t2=((m*m)+1) = " t2
print ""
print ""


pause
a=5
m1=a/(m*m+1)
m2=a/((m*m)+1)
print " m = " m
print " a = " a
print " m1=a/(m*m+1) = " m1
print " m2=a/((m*m)+1) = " m2
print ""
print ""

****************************************************************************************************************
chez moi
r1=350 (faux)
r2=198 (juste)
s1=s2=990 (juste)
t1=t2=5 (juste)
m1=m2=1 (juste)
je ne comprends pas comment l'ajout de la division perturbe le calcul de r1

Re: parentheses recalcitrantes ( juste pour les pervers! )

Posté : 13 juin 2012, 20:33
par Cyril Cavadore
L'expression de r1 doit avoir un soucis...

r1=(m*y+x-m*c)/(m*m+1)
r2=((m*y)+x-(m*c))/((m*m)+1)

dans le doute met les parentheses;
je regarderais ca.
CC

Re: parentheses recalcitrantes ( juste pour les pervers! )

Posté : 14 juin 2012, 07:29
par Jean-Francois_Koenig
L'expression de r1 doit avoir un soucis...
Ca c'est sur! ;)
Le probleme c'est de trouver lequel?
De toutes facon comme il faut toujours (quand on calcule) verifier qu'on obtient bien ce a quoi on s'attend
il n'y pas de soucis a mettre des parentheses pour que le calcul soit correct
et donc rien ne presse.