Bonjour,
En cherchant l'ordre de priorité de l'opération "a/b/c" avec "a, b, c : real", j'ai fait quelques tests et aucun ne me donne le même résultat :
a := 2/5/4 donne 2,6368450273e-308
b := (2/5)/4 donne 1,8072257318e-307
c := 2/(5/4) donne 2,6362487395e-308
d := 2.0/5.0/4.0 donne 2,7519127884e-307
e := (2.0/5.0)/4.0 donne 1,5592512903e-307
f := 2.0/(5.0/4.0) donne 6,5569702359e-312
Dans le cas des entiers, il semblerait que le calcul se fasse de droite à gauche (et encore les 2 résultats ne sont pas identiques), alors que pour les réels il ne semble rien du tout, aucun des résultats ne se ressemble. Est-ce que quelqu'un pourrait m'expliquer pourquoi, ou à la rigueur me donner un lien vers une page l'expliquant ? (J'ai déjà fait une recherche sur le forum, qui m'a donné des informations intéressantes pour les calculs en Delphi, mais pas cette info).
Autre question, pour calculer le quotient de 3 réels entre eux, les parenthèses sont-elles obligatoires sous peine d'avoir un résultat erroné (ou du moins, moins précis) ?
J'utilise Delphi 2005 (Win32) sans aucun patch sous WinXP SP2
Merci d'avance pour tout élément de réponse
Partager