引数として2つの整数を取り、返すメソッドがあります:
public int method(int a, int b){
return Math.round((Math.abs(a-b)/3) - (Math.min(a,b)-1500)/10)
}
値 1400 と 1500 (期待値は 43) で合格する単体テストを作成しましたが、1459 と 1500 では失敗します。期待される出力は 18 ですが、メソッドは 17 を返します。これは丸めと関係があると思います。 、ただし、明らかなエラーは表示されません。17.7(6) を 18 に丸めることに問題はありません。
編集:
実際の関数はわずかに異なっていました (私は Math.abs(ab) を持っていませんでしたが、代わりに、この結果として "diff" 変数を定義しました。私はそれを double diff として宣言したことを皆さんに約束することができました; - 私にはわかりません)なぜint diffになるのですか:)解決済みありがとう:)