2015-09-30 30 views
-4
System.out.println("30%4 = " + 30%4); 
System.out.println("33%4 = " + 33%4); 

System.out.println("30*4/100 = " + 30*4/100); 
System.out.println("33*4/100 = " + 33*4/100); 

我的問題是爲什麼2不是30%的情況下是4個案例。有人能詳細解釋我嗎?由於提前如何30%4輸出是2但如果我寫30 * 4/100輸出是1

+4

這些都是基本的模和除法算術,我會谷歌它來代替。 –

+5

'30%4 = 2'因爲餘數'2'。 '30 * 4/100 => 120/100 = 1'。 – Satya

+0

'4 * 7 = 28' so'30-28 = 2' –

回答

0

%運算是模數,它需要的其餘部分的兩個數的分割後,在你的情況下,它除以30由如圖4所示,最高倍數是7 7×4 = 28現在餘數是2,這是您的答案,對於33的情況下它不一樣的,8×4 = 32的餘數是1

2

你必須瞭解如何模工作。 =)當你應用模數時,它被分割並返回「餘數」...

How Does Modulus Divison Work 有一個很好的解釋已經發布。

2
30 % 4 = 2 

因爲:

4 + 4 + 4 + 4 + 4 + 4 + 428所以30 -28 = 2

0

在Java中,整數除法返回計算的地板(向下取整爲最接近的整數)。這就是爲什麼30 * 4/100從爲1

在另一方面,彈性模量(%)是整數除法的餘數。由於28可以被4整除,30/4的剩餘部分將是2(如28 + 2 = 30)。

相關問題