コードを確認したところ、ビット操作 (|0) に関する計算ミスが見つかりました。
まず、(a*b)|0 のように 2 つの数値を計算した後に '|0' を使用する特別な理由があるのだろうか。
第二に、以下のケースでは、結果が 220050 になると予想していますが、結果は 220049 です。なぜこの結果が得られるか知っていますか?
importPackage(java.io); importPackage(java.lang);
var a = 164.700;
var b = 1500;
var result = (a*b)|0;
System.out.println(result);