たとえばint value1 = 11
、2 ( ) で割ってvalue1 / 2
5 を返した後の値があります。 float の実際の値は 5.5 です。一般に、値を次に高い値に丸めたい..
質問する
13259 次
4 に答える
24
常に切り上げたい場合で、float
値がある場合は、 ceilf
(<math.h>
ライブラリから) を使用します。
整数除算を で切り上げたい場合はn
、 を実行します(value + n-1) / n
。したがって、2 で割ると、これは になり(value + 1) / 2
ます。
于 2013-01-31T18:05:05.437 に答える
10
値をより高い値に丸める関数 ceil(<#(double)#>) または ceilf(<#(float)#>) があります
また、計算を float/double に明示的にキャストして値 5.5 を取得する必要があります。これはより高い値に丸められます。
ceilf(value1 / 2.0f);
また
ceilf(1.0f * value1 / 2);
これを作成しないと、次の順序で提示される可能性があります。
ceilf(11/2) =
1) 11/2 = result int = 5
2) ceilf(5)
3) 5 ->int implicitly cast to float -> 5.0f
4) result 5.0f
于 2013-01-31T18:05:15.367 に答える
1
通常は、1 を足すだけです。
int ハーフ = (値 1 + 1)/2
したがって、常に切り上げます。整数の最も簡単な方法です。
于 2013-01-31T18:03:47.980 に答える
1
ceil(value1 / 2)
最も近い整数に切り上げます
于 2013-01-31T18:05:11.693 に答える