[Squeak-fr] difficulte avec test d'egalite

Damien Cassou damien.cassou at laposte.net
Ven 27 Mai 16:58:57 CEST 2005


> La méthode suivante à un comportement bizarre:
> 
> 
> testReflexion
> 	|image|
> 	image := b reflectWith: u at: a.
> 	self assert: (image x = -2.0 and: [image y = 7.0])
> 
> 
> Les tests d'égalité sont false alors que :
> 
> "image x" s'évalue à -2.0 (instance de Float)
> 

Je ne connais pas la cause de ton probleme, mais dans la plupart des
langages un test d'egalite de float et different d'un test d'égalite
d'entiers. En effet, tous les calculs sur les flottants se font avec une
certaine precision.

Pour verifier si le probleme vient de la, change ton test en :

(image x - -2.0) abs < 0.001

(verifie la syntaxe)

En fait, le test revient a verifier si les deux nombres sont assez
proches pour considerer qu'ils sont egaux. Cette reponse est juste une
indiquation et je peux me tromper completement ; je ne connais pas assez
Squeak pour etre plus precis.

-- 
Damien


Plus d'informations sur la liste de diffusion Squeak-fr