matlab rem和mod,Matlab的mod和rem
通常取模運算也叫取余運算,它們返回結果都是余數.rem和mod唯一的區別在于:
當x和y的正負號一樣的時候,兩個函數結果是等同的;當x和y的符號不同時,rem函數結果的符號和x的一樣,而mod和y一樣。
這是由于這兩個函數的生成機制不同,rem函數采用fix函數,而mod函數采用了floor函數(這兩個函數是用來取整的,fix函數向0方向舍入,floor函數向無窮小方向舍入)。
rem(x,y)命令返回的是x-n.*y,如果y不等于0,其中的n = fix(x./y),而mod(x,y)返回的是x-n.*y,當y不等于0時,n=floor(x./y)
兩個異號整數取模取值規律 (當是小數時也是這個運算規律,這一點好像與C語言的不太一樣)
先將兩個整數看作是正數,再作除法運算
①能整除時,其值為0
②不能整除時,其值=除數×(整商+1)-被除數
例:mod(36,-10)=-4
即:36除以10的整數商為3,加1后為4;其與除數之積為40;再與被數之差為(40-36=4);取除數的符號。所以值為-4。
例:mod(9,1.2)=0.6;
例:
>> mod(5,2)
ans =1 ? ? ? ? ? ? ? ? ? %“除數”是正,“余數”就是正
>> mod(-5,2)
ans =1
>> mod(5,-2)
ans =-1 ? ? ? ? ? ? ? ? ?%“除數”是負,“余數‘就是負
>> mod(-5,-2)
ans =-1 ? ? ? ? ? ? ? ? ?%用rem時,不管“除數”是正是負,“余數”的符號與“被除數”的符號相同
>> rem(5,2)
ans =1 ? ? ? ? ? ? ? ? ? %“被除數”是正,“余數”就是正
>> rem(5,-2);
ans =1
>> rem(-5,2)
ans =-1 ? ? ? ? ? ? ? ? %“被除數”是負,“余數”就是負
>> rem(-5,-2)
ans =-1
本文來源于網絡:查看?>https://blog.csdn.net/u012939857/article/details/64141356
總結
以上是生活随笔為你收集整理的matlab rem和mod,Matlab的mod和rem的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html为何转换为json,将HTML元
- 下一篇: php怎么实现匿名评论,PHP-匿名对象