Weird Flash Math problem

Hi,
I have faced this question since the earlier version of Flash but this one beats them all. Can anyone please let me know why this calculation gives this arbitrary result in Flash CS3 using Number data type.

If tried in Flash 8 AS 2.0 and any other calculator and even manually calculated it

var tx:Number;
tx=(357.15-116.65);
trace(tx);

The result 240.5 (is correct)

In AS 3.0 same code

var tx:Number;
tx=(357.15-116.65);
trace(tx);

The result 240.49999999999997

If you think this does not matter at all. Think of the various calculations that are processed while performing major calculations in serious projects. Let me know any inputs or if I am going wrong anywhere.