[Squeak-fr] difficulte avec test d'egalite

stéphane ducasse ducasse at iam.unibe.ch
Ven 27 Mai 17:07:58 CEST 2005


mais je pense que tu as raison les floats sont "dangereux"

>> 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
> _______________________________________________
> Squeak-fr mailing list
> Squeak-fr at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/listinfo/squeak-fr
>



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