Info

此问题已关闭。 请重新打开它进行编辑或回答。

Return back to the main function after while loop

1 次查看(过去 30 天)
I have this code
table = [ 0 2 2 2 ; 1 0 0 2; 1 0 1 2; 1 1 0 0; 1 1 0 1];
code =[ 0 0 1 1 0 1 1 1 0 0 1 1 1 0 0 0];
n=1;result=[];loop=0;m=1;
while n <=16
[x,y]=find(table(:,1)==code(n)); %MAIN%
if length(x)==1 % option 1 %
result=[result,x];
n=n+1;
if length(x)>1 % option 2 %
while length(x)>1
[x,y]= find (code(n)== table(:,m));
n=n+1;
m=m+1;
end
result=[result,x];
end
end
end
How can I return to the %MAIN% after finish with % option 2 % ? Is there something missing?
The answer I got is
result = 1 1 5
It seems that after % option 2 % finished, it does not return into % Main %
The answer should be
result = 1 1 5 4 1 1 2 1
  1 个评论
Walter Roberson
Walter Roberson 2018-12-27
you increment n within the inner while loop. that can easily cause n to get towards the 16 that is the end of the outer while loop.

回答(0 个)

此问题已关闭。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by