編程語言中,取餘和取模的區別

取餘,遵循儘可能讓商向0靠近的原則

取模,遵循儘可能讓商向負無窮靠近的原則

在matlab中,關於取餘和取模是這麼定義的:

當y≠0時:

取餘:rem(x,y)=x-y.*fix(x./y)

取模:mod(x,y)=x-y.*floor(x./y)

其中,fix()函數是向0取整,floor()函數是向負無窮取

運算爲例:

7/(-3)=-2.3,在這個運算中,x爲7,y爲-3,分別調用fix()和floor()兩個函數,得到結果是:

fix(-2.3)=-2

floor(-2.3)=-3

所以,rem(7,-3)=1,mod(7,-3)=-2

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章