matlab中for循环内给数组赋值 5

Pa=[1,2,3,2,1,4,5,7,6,5,4,3];fork=0:1:11a1=Pa(k);a2=Pa(k+1);a3=Pa(k+2);a4=Pa(k+3);a5=... Pa=[1,2,3,2,1,4,5,7,6,5,4,3];
for k=0:1:11
a1=Pa(k);
a2=Pa(k+1);
a3=Pa(k+2);
a4=Pa(k+3);
a5=Pa(k+4);
if a1<=a2
if a2<=a3
if a3>a4
if a4>a5
a=k+2;
w=a3;
else if a3>a5
a=k+2;
w=a3;
end
end
end
end
end
end
运行的时候,提示
Attempted to access Pa(0); index must be a positive integer or logical.
Error in Untitled2 (line 4)
a1=Pa(k);

求解答!!!谢谢
展开
 我来答
7758258大学生
2014-04-06 · 超过16用户采纳过TA的回答
知道答主
回答量:32
采纳率:0%
帮助的人:42.2万
展开全部
在matlab中下标是从1开始的。你在循环一开始k=0:1:11中让k=0时a1=Pa(k)出错,因为没有Pa(0),只要你将k=0:1:11改为k=1:1:12就好了。
希望对你有所帮助。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式