matlab中ones中函数出错

代码:A=0.00001;B=0.25/A;M=ones(1,B+1)结果显示:错误使用onesSize输入必须为整数。出错a(line3)M=ones(1,B+1)而我... 代码:
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)时则能正确显示结果,请问一下这是为什么?
展开
 我来答
lhmhz
高粉答主

2018-07-20 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7264 获赞数:17014

向TA提问 私信TA
展开全部

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

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

A=0.00001;
B=0.25/A;

B=single(B+1)

M=ones(1,B)

和蔼的禾斗
2018-07-20 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:53
采纳率:80%
帮助的人:30万
展开全部

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

执行没有问题

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

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

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式