如果這是一個簡單的問題,我很抱歉,但在第一個數字小於第二個數字時,我很難理解模數除法的概念。例如,當我的書1%4說剩下的是1時,我不明白1是1的餘數是多少。4是0.25。我是否錯誤地思考模分裂?第一個數字小於第二個數字時的模量除法
回答
首先,在Java中,%是餘數(不是模)運算符,它具有略微不同的語義。這就是說,你需要考慮整數除法,就好像沒有小數值一樣。把它看作是不能分割的存儲項目:你可以將零個大小爲4的項目存儲在總容量爲1的存儲中。存儲最大數量的項目後,您的剩餘容量爲一個。同樣,13%5爲3,因爲您可以在尺寸爲13的存儲區中容納2個大小爲5的完整項目,其餘容量爲13 - 2*5 = 3
。
如果將1除以4,則得到0,餘數爲1.這就是所有的模數,即除法後的餘數。
什麼如果是40%會發生160 – 2014-11-29 09:13:55
@yanivx同樣的事情,0餘數40,所以答案是40 – 2014-12-01 19:41:36
另一種方式可以把它看作是以另一個數字的倍數表示你的數字。 I.e,a = n*b + r
,其中b>r>=0
。從這個意義上說,你的情況給出1 = 0*4 + 1
。 (編輯:只談正數)
我想你在%(Remainder)
和/(Division)
運營商之間感到困惑。
當你說%
,你需要繼續分紅,直到你得到剩餘0或可能結束。最後你得到的是Remainder
。
當你說/
,需要將分紅,直到除數變爲1和最終產品你叫Quotient
另一個不錯的方法來澄清事實, 在模數,如果第一個數字是>第二個數字從第一個數字減去第二個數字,直到第一個數字小於第二個數字。
17 % 5 = ?
17 - 5 = 12
12 % 5 = ?
12 - 5 = 7
7 % 5 = ?
7 - 5 = 2
2 % 5 = 2
因此17%5,12%5,7%5所有給出2. 答案這是因爲2/5 = 0(與整數工作時)與2作爲剩餘部分。
我將爲「讓 - 伯納德佩萊林」已經說過的內容添加一個更實際的例子。
這是正確的,如果你除以4你得到0但是,爲什麼當你做1%4你有1結果?
基本上這是因爲這樣的:
n = a/b (integer), and
m = a % b = a - (b * n)
所以,
a b n = a/b b * n m = a%b
1 4 0 0 1
2 4 0 0 2
3 4 0 0 3
4 4 1 0 0
5 4 1 4 1
結論:雖然< B,A%B的結果將是 「一個」
- 1. 檢查第二個數字是否大於或小於第一個數字
- 2. 第一個數字是第二個數字的倍數
- 3. JavaScript - 刪除第一個數字高於
- 4. 第一個數字取決於第四個和第五個數字的數字的正則表達式
- 5. 從二進制數中刪除第一個數字的含義?
- 6. C++刪除數字的第一個和最後一個數字
- 7. cffunction:基於第一個參數的第二個參數
- 8. charAt(0)不返回第一個數字,而是第二個
- 9. SQL - 計數第一個字段中有第二個變量的實例
- 10. PHP:獲取第一個字的第一個字符和第二個字符的三個字符
- 11. C:找到最接近的第一個數字而不重複第二個數字中的數字?
- 12. 當第一個字符是數字時更改爲第一個大寫字母
- 13. 更新列中的第二個數字
- 14. jquery大於/小於只看第一個數字?
- 15. 第一字第一個字符第二字第二字符和上直到陣列
- 16. 確定第一個數字
- 17. 正則表達式 - 第一個隨機字符等於第二個字符。
- 18. 從int獲得第二個數字
- 19. 在java中驗證第二個數字
- 20. 從第二個字符串中刪除第一個字符串中所有字符的最有效方法?
- 21. Django - 根據第一個字段實時更新第二個list_filter字段?
- 22. REGEX_SUBSTR - 匹配第二次出現的一個或兩個數字
- 23. 嘗試刪除發現模式的第一個字符串,並保留第二個字符串不變
- 24. zsh自動完成,基於第一個參數的第二個參數
- 25. Python:從第一個數字字符中刪除字符串
- 26. 在bst中第k個最小數字
- 27. 如何更改第二個字的字體大小字符串
- 28. 爲什麼第二個數組比第一個少一個?
- 29. 當輸入一個字符串時,數組輸入第二個整數
- 30. For循環與第一個參數字符串中的空格之間的第二個參數字符串
我明白餘數的時候第一個數字大於第二個數字。所以我得到13%5是3。我不明白的是如果5%13時答案會是什麼。 – 2013-05-01 01:58:58
如果您的物品比您的容量大,則永遠無法將其放入您的存儲空間。因此,結果始終是您的總體容量,但仍未使用(即第一個數字 - 您可能意思是'5%13') – misberner 2013-05-01 02:00:20
是的,我的意思是5%13而不是相反。所以如果我得到你所說的答案5%13是5?那是對的嗎? – 2013-05-01 02:02:59