matlab中ones中函数出错

代码:
A=0.00001;
B=0.25/A;
M=ones(1,B+1)
结果显示:
错误使用 ones
Size 输入必须为整数。

出错 a (line 3)
M=ones(1,B+1)

而我直接把B带入进去也就是M=ones(1,25001)时则能正确显示结果,请问一下这是为什么?

matlab中ones中函数出错的原因,ones()函数要求变量为整数型。所以,应该把B值的数值型(double双精度)转化(single单精度)整数型。

所以应将代码改如下形式。

A=0.00001;
B=0.25/A;

B=single(B+1)

M=ones(1,B)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-20

单独你这一段代码【
A=0.00001;
B=0.25/A;
M=ones(1,B+1)】

执行没有问题

说明问题出在其他地方!!!!!!

你这一段只是提取你程序中的一部分吧

本回答被网友采纳
相似回答