我正在尝试在MATLAB中执行模运算,我不确定如何将输入变量转换为正确的数据类型以完成模运算。
这就是我所拥有的:
sequence = 0;
....
sequence = sequence + 1;
if (modp(sequence, 3) == 0)
....
在C-ish,我正在寻找if (sequence % 3 == 0)
。
MATLAB抱怨double没有modp
操作,我必须使用int。但是,文档没有说明我需要使用哪种整数格式(即int8
,int64
等等,并且这些整数格式都不起作用。
我做错了什么?
答案 0 :(得分:2)
您是否意识到您正在使用“符号工具箱”的功能?在这种情况下我没有看到任何优势,因此只需使用Matlab中的mod(a,b)
(还有一个固定点mod(a,b)
和符号mod(a,b)
,不要混淆它们)