1. ホーム
  2. java

[解決済み] Java 任意の数の切り上げ

2022-03-03 11:57:49

質問

単純な質問で、探している答えが見つからないのですが。 int ?

例えば、0.2, 0.7, 0.2222, 0.4324, 0.99999という数字があるときは、必ず結果が1であってほしいと思います。

今のところ、私は

int b = (int) Math.ceil(a / 100);

仕事をしているようには見えませんが。

解決方法は?

Math.ceil() は、正しい関数を呼び出す必要があります。推測ですが aint となり、その結果 a / 100 は整数の演算を行う。試しに Math.ceil(a / 100.0) の代わりに

int a = 142;
System.out.println(a / 100);
System.out.println(Math.ceil(a / 100));
System.out.println(a / 100.0);
System.out.println(Math.ceil(a / 100.0));
System.out.println((int) Math.ceil(a / 100.0));

出力します。

1
1.0
1.42
2.0
2

参照 http://ideone.com/yhT0l