我想分兩個整數乘以100,但它一直只給0或100。有人可以幫我嗎?在Java中劃分兩個整數給我0或100?
int x= (a/b)*100;
如果a是500,b是1000,它會給我0.唯一一次給我100是a> = b。我怎樣才能解決這個問題?
謝謝
我想分兩個整數乘以100,但它一直只給0或100。有人可以幫我嗎?在Java中劃分兩個整數給我0或100?
int x= (a/b)*100;
如果a是500,b是1000,它會給我0.唯一一次給我100是a> = b。我怎樣才能解決這個問題?
謝謝
這聽起來像你沒有正確輸入你的變量;兩個整數除法導致一個整數,而不是浮點數或雙精度。例如:
(int)3/(int)5 = 0
(float)3/(float)5 = 0.6
試試這個:
int x = a * 100/b;
的想法是,你第一次做a/b
,因爲它是整數運算,這將結果四捨五入爲0
。做a * 100
首先應該解決它。
但請注意,這種方法可能會溢出。 – Howard 2011-12-29 15:43:40
請解釋預期的結果。 – Vincent 2011-12-29 16:52:59