matlab的问题:关于Index exceeds matrix dimensions.

countCHs=0; cluster=1; A=rand(1); C=rand(1); E=0; v=0; d=70;%定义一个比较常量 for i=1:1:n for j=1:1:n if ((i~=j)&(sqrt((S(i).xd-(S(j).xd))^2 + (S(i).yd-(S(j).yd))^2 )<d)) v=v+1; E=E+S(j).E; end end T(i)=E/(S(i).E*v); A(i)=T(i); end for i=1:1:n C(i)==1; for j=1:1:n if ((i~=j)&(sqrt((S(i).xd-(S(j).xd) )^2 + (S(i).yd-(S(j).yd))^2 )<d)) if (A(j)<A(i)) C(i)==0; end end end end 为什么会一直报错呢 :??? Index exceeds matrix dimensions. 求高手指点。

第1个回答  2020-05-11
Index
exceeds
matrix
dimensions
意思就是说,数组的脚标
超过了
数组的最大
维数。
你这个程序是哪里选出的一段吧,n
没有赋值,S(i)???
我才问题在数组
A和C。
A=rand(m);生成的是m*m的数组,A=rand(1),A不就是一个数了吗?怎么还加脚标。
相似回答
大家正在搜