为什么我接收”指数超过数组元素的数量。指标不得超过7。“当试图删除指标由零之后直接使用一个for循环。

1视图(30天)
我想使用的功能
函数删除= removeData (vec)
vec1 =矢量;
x = 1:长度(vec)
如果vec (x + 1) = = 0
如果vec (x) ~ = 0
vec1 (x) = [];
结束
结束
结束
删除= vec1;
结束
,这是我想要测试的代码
ans1 = removeData ([2 3 0 0 7 8 0])
1评论
Torsten
Torsten 2022年10月31日
编辑:Torsten 2022年10月31日
也许你应该先解释一下“removeData”与“矢量”应该做的。
从您的代码,应该删除非零号前夕一系列零,但我不确定这是你真正想要的。

登录置评。

答案(1)

乔恩
乔恩 2022年10月21日
你循环变量x的范围是从1到向量的长度。
在4号线你想分配vec (x + 1),最后迭代x =向量长度vec (x + 1)是一个元素之外的最后一个元素的向量。
顺便说一下更传统的风格使用我,j, k, l, m为整数指数,x通常用于实际值,e。4.3216 g

类别

找到更多的在循环和条件语句帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!