请问这个错在哪里
x=[2003 8 6 0.42003 8 7 0.3
2003 8 11 -0.6
2003 8 16 -0.6
2003 8 17 0.6
2003 8 17 0.3
2003 8 17 0.2
2003 8 18 1.3
2003 8 18 0.7
2003 8 20 0.6
2003 8 21 0.6
2003 8 21 0.5
2003 8 21 4.6]
我想比较浅前3项如果相同的话就将最后一项相加并上移如
2003 8 16 -0.6
2003 8 17 0.6
2003 8 17 0.3
2003 8 17 0.2
变为
2003 8 16 -0.6
2003 8 17 1.1
j=13;
for n =1:12
for m =n+1:j
if((x(n,1)==x(m,1))&&(x(n,2)==x(m,2))&&(x(n,3)==x(m,3)))
x(n,4)=abs(x(n,4))+abs(x(m,4));
j=j-1;
x(m,:)=[];
end
end
end
请问错在哪里啊 虽然一开始你的矩阵是12行,但是在这个过程中,由于删减,实际上到最后的时候矩阵并没有12行
所以造成下标溢出 循环从最大到最小就不会出错。如 n=12:-1:1 原帖由 ustb 于 2007-3-7 16:56 发表
循环从最大到最小就不会出错。如 n=12:-1:1
同意~
页:
[1]