how to make a comparison in a for loop. Problem on indexes

1 visualización (últimos 30 días)
mazari ahmed
mazari ahmed el 14 de Mzo. de 2015
Respondida: mazari ahmed el 9 de Abr. de 2015
At the end of the for loop l want to compare the values of I(i) and I(j) look at the second for loop. here is the returned error :
??? Attempted to access I(2); index out of bounds because numel(I)=1.
Error in ==> eliminationphase at 143
if (I(i)==I(j)&&(j < i))
Look at the code below:
alpha= 10;
I=1;
for i=1:N
if (~ismember(num2str(i), num2str(F)))
while (C(i) < alpha)
for j=1:N
if ((i~=j) && (ismember(j, neighbour_n{i})))
C(i)=C(i)+C(j);
display(['la somme des cardinaux de ', num2str(i), ' is ', num2str(C(i))]);
I=I+1;
display(['The number of iteration of ', num2str(i), ' is ', num2str(I)]);
end
end
end
if (~ismember(num2str(i), num2str(F)))
display(['the value of the node: ', num2str(i), ' at the end of while is ; ', num2str(C(i))]);
end
end
end
% how to compare betwwen I(i) and l(j)?
% l need to retreive the all the values of I and compare between them and between thein indices
for i=1:N
for j=1:N
if (((~ismember(num2str(i), num2str(F)))&&(~ismember(num2str(i), num2str(F))))&&(i~=j))
if (I(i)==I(j)&&(j < i))
display(i);
end
if (I(i) >I(j))
display(i);
end
end
end
end
  4 comentarios
Geoff Hayes
Geoff Hayes el 14 de Mzo. de 2015
Why do you have the following condition in the inner for loop of your second loop block
if (((~ismember(num2str(i), num2str(F)))&&(~ismember(num2str(i), num2str(F))))&&(i~=j))
What is the intent behind this code?
mazari ahmed
mazari ahmed el 9 de Abr. de 2015
Finally you are right Geoff, it's working

Iniciar sesión para comentar.

Respuestas (1)

mazari ahmed
mazari ahmed el 9 de Abr. de 2015
Finally you are right Geoff, it's working

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by