電子書籍の厳選無料作品が豊富!

こんばんは、VBSについて質問です

以下のコードですが、何故Elseのケースが適応されるのかがわかりません。
i=0.4*3 '1.2
j=0.6*2 '1.2
なので、メッセージボックスで1が表示されると思ったのですが・・・。

'----Text.vbs----
i = 0.4
j = 0.6

IF i*3 = j*2 then
Msgbox 1
Else
Msgbox 2
End If

質問者からの補足コメント

  • うーん・・・

    あー、しばらく扱うことがなかったのですが、誤差について考えないといけないのでした。。。
    誤差については、あまり勉強してこなかったので、すぐに原因がわかりませんでしたが、そういう事ですよね?

    補足からで申し訳ないのですが、改めて質問です。
    取り扱うデータが小数点第2位までであれば、これらの四則演算は通貨型に変換してから計算を行なうことで誤差はなくすことができるのでしょうか?

      補足日時:2016/02/22 22:37

A 回答 (1件)

> 通貨型に変換してから計算を行なうことで誤差はなくすことができるのでしょうか?



そうです。
小数点以下4桁まで、誤差なしで計算できます。

? 0.4 * 3 - 0.6 * 2
1.11022302462516E-16

? CCur(0.4) * 3 - CCur(0.6) * 2
0
    • good
    • 2

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!