MATLAB中有没有求余运算符?

来源:百度知道 编辑:UC知道 时间:2024/07/02 12:50:16
是什么,怎么用?
顺便问一下在MATLAB编程中,怎么判断一个数为正整数和非正整数?
再问,也是在MATLAB编程中,有一个程序分两种情况,一种是有输入量,一种没有输入量,怎么判断有没有输入量?
请知道的大哥大姐,帮帮忙啊,谢谢啦!

1.模
mod
例子
mod(100,3)

ans =

1
2.余数
rem
例子
rem(100,3)

ans =

1
两者的区别是符号,mod(a,b)的符号与b相同,rem(a,b)的符号与a相同

3.判断输入变量数
nargin

nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能。通常可以用他来设定一些默认值,如下面的函数。

例子,函数test1的功能是输出a和b的和。如果只输入一个变量,则认为另一个变量为0,如果两个变量都没有输入,则默认两者均为0。

function y=test1(a,b)
if nargin==0
a=0;b=0;
elseif nargin==1
b=0;
end
y=a+b;

4.判断正整数
这一点比较麻烦,首先我们知道matlab默认的数字格式都是浮点形的,即double形的,整数型的格式则有int8、uint8、int16、uint16、int32、uint32、int64、uint64等,需要指定或转换。我估计楼主的意思是判断double形的数是不是整数,比如说输入a=1,则a是正整数,(但其实a依然是double形的)
这里用round进行四舍五入,然后判断是否与原来的值相等,相等的话就是整数了。大于零小于零则简单,直接用>或<判断就可以了。

下面是例子:
(a>0)&(a==round(a))
如果a是正整数,则答案为1(True),否则为0(false)

mod