この現象を観察したことがありますか。
Visual Studio 2010 C#.NetのImmediateWindowで次の計算を計算しようとすると、この奇妙な解決策が得られます。
1E-9 * 100 = 0.00000010000000000000001
1E-9 * 1E+2 = 0.00000010000000000000001
このように計算しても、次のようになります。
double val = 1E-9;
0.000000001
val = val * 100;
0.00000010000000000000001
Windows calcで同じ計算を計算すると、期待どおりの結果が得られます。
1E-9 * 100 = 0,0000001
誰かがこの振る舞いについて何か知っているなら、私はその情報を手に入れてとてもうれしく思います。