matlab中求余、求模运算方法总结
2013-04-27 16:12
1156 查看
由于实验室的项目要用matlab做仿真,开始学习matlab中,虽然刚开始碰到的问题都很基础,但还是mark一下,也算是一个学习笔记吧
首先看一个例子:求所有的三位数,使其各位数字的立方和等于其本身,也称这样的数字为水仙花数!
代码:
for n=100:999
if mod(n,10)^3+fix(mod(n,100)/10)^3+fix(n/100)^3==n
n
end
end
运行及可得结果
n =
153 370 371 407
下面分别介绍:
1,n的百位数字 baiwei=fix(n/100)
这里注意在matlab中假设n=123,则n/100的结果是1.23而不是1,所以这里用fix函数。
fix: 朝零方向取整
2,n的十位数字 shiwei=fix(mod(n,100)/10)
mod: 模数求余。
另外这里注意mod与rem的区别:
通过看他们的帮助文件可以知道,这两个数的符号一致时的结果是一样的,但是当两个数的符号不一样时,就会出现不同了。
>> mod(3,-2)
ans =
-1
>> rem(3,-2)
ans =
1
主要区别在rem(x,y)命令返回的是x - n.*y,如果y不等于0,其中的n = fix(x./y),而MOD(x,y)返回的是x - n.*y,当y不等于0时,n = floor(x./y)
因此他们之间的区别主要在与fix与floor的区别。fix是想最近的整数取整,而floor是向负无穷取整。
最后总结一下:
ceil 朝正无穷大方向取整
fix 朝零方向取整
floor 朝负无穷大方向取整
mod 模数求余
rem 求余数
round 四舍五入取整
sign 符号函数
首先看一个例子:求所有的三位数,使其各位数字的立方和等于其本身,也称这样的数字为水仙花数!
代码:
for n=100:999
if mod(n,10)^3+fix(mod(n,100)/10)^3+fix(n/100)^3==n
n
end
end
运行及可得结果
n =
153 370 371 407
下面分别介绍:
1,n的百位数字 baiwei=fix(n/100)
这里注意在matlab中假设n=123,则n/100的结果是1.23而不是1,所以这里用fix函数。
fix: 朝零方向取整
2,n的十位数字 shiwei=fix(mod(n,100)/10)
mod: 模数求余。
另外这里注意mod与rem的区别:
通过看他们的帮助文件可以知道,这两个数的符号一致时的结果是一样的,但是当两个数的符号不一样时,就会出现不同了。
>> mod(3,-2)
ans =
-1
>> rem(3,-2)
ans =
1
主要区别在rem(x,y)命令返回的是x - n.*y,如果y不等于0,其中的n = fix(x./y),而MOD(x,y)返回的是x - n.*y,当y不等于0时,n = floor(x./y)
因此他们之间的区别主要在与fix与floor的区别。fix是想最近的整数取整,而floor是向负无穷取整。
最后总结一下:
ceil 朝正无穷大方向取整
fix 朝零方向取整
floor 朝负无穷大方向取整
mod 模数求余
rem 求余数
round 四舍五入取整
sign 符号函数
相关文章推荐
- matlab读取avi视频问题总结(结合别人的解决方法)
- MATLAB绘制3D隐函数曲面的方法总结
- 用matlab 保存带标记图像、图片的方法总结
- matlab控制运算精度函数digits(A)和vpa(B)的使用方法
- 用matlab代码开启笔记本摄像头的6种方法——图像效果各不相同,纯自我总结,与大家分享
- Matlab中使用Plot函数动态画图方法总结
- C#中math类的全部运算方法(总结)
- 用matlab代码开启笔记本摄像头的6种方法——图像效果各不相同,纯自我总结,与大家分享
- 图像边缘检测及提取方法总结(含Matlab代码)
- 用matlab 保存带标记图像、图片的方法总结
- matlab保存图片的方法总结
- matlab 频谱分析方法总结
- java入门一DAY07------java基础 三大技术框架 三元运算 流程控制 方法总结
- Matlab保存图像的方法总结
- 图像直方图及直方图均衡总结(一)经典方法(附matlab和opencv端算法实现)
- Matlab符号运算总结
- 【Matlab与线性代数】Matlab中对数组元素引用方法总结
- matlab中卷积运算与互相关运算函数总结
- [转载]Matlab中使用Plot函数动态画图方法总结
- matlab符号运算总结(转)