在我的程序中是for循环嵌套if循环,if循环内再嵌套多个if循环
图中if循环没有运行,导致n(j)在已经达到Nk(j)规定的数值时并没有及时归零
我想要知道为什么这段if循环没有运行,怎么能使n(j)在达到Nk(j)规定的数值时就归零
for i=2:100
if tS>=10000
break
end
for j=1:6
if find(j==b)
TC(j)=tS+T(j,n(j)+1);
elseif j~=b
TC(j)=T(j,n(j)+1);
end
end
yyy=find(TC==min(TC(:)));
yy=yyy(1);
tS=tS2(i-1)+(TC(yy)-tS1(i-1));
nS=nS+1;
n(yy)=n(yy)+1;
tS1(1,i)=tS2(1,i-1)+(TC(1,yy)-tS1(1,i-1));
ty(1,:)=tS1(i);
t(i,:)=t(i-1,:)+(tS1(i)-tS2(i-1));
for L=yy
kk=[1 2 3 4 5 6];
kk(find(kk==L))=[];
B(i,L)=B(i,L)+1;
BB(L)=BB(L)+1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for j=kk
if n(j)==0
if T(j,1)-t(i,j) <= (r(j)/(1+IAIM(j)))*T(j,1)
B(i,j)= B(i,j)+1;
elseif T(j,1)-t(i,j) > (r(j)/(1+IAIM(j)))*T(j,1)
ty(L)=ty(L)+taop(L);
TW(i,L)=taop(L);
end
elseif n(j)~=0
if T(j,n(j)+1)-t(i,j) <= (r(j)/(1+IAIM(j)))*T(j,n(j)+1)
B(i,j)= B(i,j)+1;
if find(n(j)== Nk(j))
n(j)=0;
t(i,j)=0;
ty(j)=ty(j)+taor(j);
TW(i,j)=taor(j);
elseif n(j) < Nk(j)
n(j)=n(j)+1;
ty(j)=ty(j)+taop(j);
TW(i,j)=taop(j);
end
elseif T(j,n(j)+1)-t(i,j) > (r(j)/(1+IAIM(j)))*T(j,n(j)+1)
ty(L)=ty(L)+taop(L);
TW(i,L)=taop(L);
end
end
end
end
tS=tS1(i)+max(TW(i,:)); %更新系统时间
tS2(i)=tS1(i)+max(TW(i,:));
b=(find(B(i,:)==1));
end