MATLAB Answers

0

Extract value from Looping until or when condition is true

Asked by Ali Tawfik on 25 Aug 2019
Latest activity Commented on by Ali Tawfik on 25 Aug 2019
Hi All,
I am trying to doing a loop with different values until condition met, I just do not wanna all the iteration to work, I wanna the iteration stops when or until condition is met, Also, I'd like to get out the values that met condition
So please help me
I fix the value of x and then obtain y ,
Again, I wanna the iteration stops when or until the condition is met
The following code works only to stop iteration but with no specifying which numbers from e could fit;
clear all;
yin2=[solve(-1>x+y,y), solve(x+y>20,y)];
e=(1:10);
for i=1:10
[a(i,:)]=matfunction(e(i));
z(i,:)=a(i,1);
s(i,:)=a(i,2);
if (-1<z(i,:)) && (s(i,:)>3);
break
display('ok')
z
else
display('bye bye')
end
end

  0 Comments

Sign in to comment.

1 Answer

Answer by KALYAN ACHARJYA on 25 Aug 2019

Is this?
i=1;
while ~(-1<z(i,:) && s(i,:)>3)
[a(i,:)]=matfunction(e(i));
z(i,:)=a(i,1);
s(i,:)=a(i,2);
i=i+1;
end
Please note this is partial code, add initial lines of the code.
The while loop is run until this condition "-1<z(i,:) && s(i,:)>3" is false, when it true, loop will terminate.

  1 Comment

Hi Kalyan,
Thanks for your answer.
I got the following error, when I try to run with your feedback:
Reference to a cleared variable z.
Also, I think you misunderstand me, because, I wanna add while inside the for loop ?.
I mean, I wanna run the loop, until the condition is met then terminate, and then know which variables could met that condition
Hope you could help.
Thanks,

Sign in to comment.