为什么下面的程序运行的时候总是报错?
A=zeros(21,1);
for a=0:0.1:2
i=1+10*a;
A(i)=i;
end
请大神指点!
运行之后总会出现:
Attempted to access A(7); index must be a positive integer or logical.
不知道怎么回事?
问题解决了再送20分!
Matlab 很简单的一个程序却总是报错
答案:3 悬赏:30
解决时间 2021-04-08 14:38
- 提问者网友:美人如花
- 2021-04-08 11:50
最佳答案
- 二级知识专家网友:强势废物
- 2021-04-08 12:40
% 数组的索引值(i)必须是正整数或者逻辑值
% a 是 double 所以 i = 1+10*a 也是double
A=zeros(21,1);
for a=0:0.1:2
i=1+int8(10*a);
A(i)=i;
end
% a 是 double 所以 i = 1+10*a 也是double
A=zeros(21,1);
for a=0:0.1:2
i=1+int8(10*a);
A(i)=i;
end
全部回答
- 1楼网友:末路丶一枝花
- 2021-04-08 14:22
A=zeros(21,1);
for a=0:1:20
i=1+a;
A(i)=i;
end
按上面语句试试
- 2楼网友:社会水太深
- 2021-04-08 13:45
我知道了,应该是sdpvar,写成了sdqvarle,花了我一早上。。。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯