matlab里rem和mod函数区别?
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/15 15:00:51
matlab里rem和mod函数区别?
据说rem(x,y)的ans符号与x相同,mod(x,y)的ans符号与y相同,
但是自己试程序的时候发现结果是不一样的
>> rem(-12.2,2)
ans =
-0.2000
>> mod(-12.2,2)
ans =
1.8000
为什么用mod()函数的结果会得到1.
据说rem(x,y)的ans符号与x相同,mod(x,y)的ans符号与y相同,
但是自己试程序的时候发现结果是不一样的
>> rem(-12.2,2)
ans =
-0.2000
>> mod(-12.2,2)
ans =
1.8000
为什么用mod()函数的结果会得到1.
没问题啊,mod函数的结果与y符号相同,这里y=2是正数,所以得到的是1.8.
mod(x,y)和rem(x,y)的计算表达式都是
x - n.*y
但n的定义不同,对于rem
n = fix(x./y) = -6
而对于mod
n = floor(x./y) = -7
所以
rem(-12.2,2) = -12.2 - (-6)*2 = -0.2
mod(-12.2,2) = -12.2 - (-7)*2 = 1.8
概括起来:如果x、y同号,rem和mod结果相同;如果x、y不同号,则rem(x,y)的符号与x相同,mod(x,y)的符号与y相同.
再问: 我的意思是,这两个函数不都是除后面那个数再取余数吗?为什么一个是0.2一个是1.8呢?
再答: 我上面说的还不够清楚吗? 所谓“取余数”,就是从被除数中减去除数的整数倍,而这个“整数倍”的整数对于mod和rem的含义不同,所以会有结果的差异。
mod(x,y)和rem(x,y)的计算表达式都是
x - n.*y
但n的定义不同,对于rem
n = fix(x./y) = -6
而对于mod
n = floor(x./y) = -7
所以
rem(-12.2,2) = -12.2 - (-6)*2 = -0.2
mod(-12.2,2) = -12.2 - (-7)*2 = 1.8
概括起来:如果x、y同号,rem和mod结果相同;如果x、y不同号,则rem(x,y)的符号与x相同,mod(x,y)的符号与y相同.
再问: 我的意思是,这两个函数不都是除后面那个数再取余数吗?为什么一个是0.2一个是1.8呢?
再答: 我上面说的还不够清楚吗? 所谓“取余数”,就是从被除数中减去除数的整数倍,而这个“整数倍”的整数对于mod和rem的含义不同,所以会有结果的差异。
matlab里rem和mod函数区别?
matlab中的mod和rem
求模Matlab中提供了rem和mod的区别
mod和rem关于matlab中mod和rem是什么作用,我查到的是mod为取模,rem为取余,但是,mod取模?模不是
MATLAB的mod和rem函数是不是超过一个很大的数就不灵了?该如何解决呢?好像num2str也不行
matlab中rem函数的作用?
MATLAB里的rand函数和randn函数用法有什么区别?分别怎么用?
关于matlab的mod函数,有段程序不懂.
(a+b) mod n 和[(a mod n) +b]mod n 有什么区别?
VFP中MOD()和%有什么区别?
matlab中的S函数和M函数有什么区别
matlab中rando函数和random函数的区别