17/04/28 17:40:21.61 TxOrBLp1.net
Javaにおいては整数同士の割り算の結果は、小数点以下が切り捨てられて整数になる。つまり、3 / 2 == 1。整数の割り算の結果は整数になる。
これ重要。テストに必ずでるからな。
切り捨てないようにするには、どちらかを浮動小数点数にしないといけない。例えば、3を(double)でキャストすると、(double)3 / 2 == 1.5となる。
割り算の誤差を少なくするために、VirtualScreenクラスに次のようなメソッドを用意する。
protected int rdiv(double a, double b) {
�return round(a / b);
}
この関数に整数を渡せば、引数は自動的にdouble型になり、四捨五入された整数が返ってくる。
浮動小数点数へのキャストと四捨五入により、誤差を最小にすることができる。
この関数を使って、lineメソッドを書き直そう。