Problem with how to select the best result from a loop calculation
    2 views (last 30 days)
  
       Show older comments
    
Dear All,
Thanks for your time.
I am currently writting a code. I would like to obtain the best solution after running a loop and then obtain the corresponding variables used. I will show a sample code such as:
for i=1:2
  a(1)=2
  a(2)=3
  c=a.*3
end
b=min(c)
d=a(i)
The correct answer is b=6 and d=a(1).However, I can either get b=6 but d=a(3) or b=9 and d=a(2).
Could somebody help me with this please? Thank you very much.
Zhe Li
2 Comments
  Jan
      
      
 on 10 Jan 2013
				The contents of the FOR loop does not depend on the loop counter "i". So why do you use a loop? How can "d=a(3)" happen, when you define only a(1) and a(2)?
Accepted Answer
  José-Luis
      
 on 10 Jan 2013
        
      Edited: José-Luis
      
 on 10 Jan 2013
  
       the_best = bitmax; %largest possible value, Inf would work as well
for ii = 1:1000
    your_new_min = %however you get it
    if (your_new_min < the_best)
        the_best = your_new_min;
        b_best = %whatever the current value of b is
        d_best = %whatever the current value of d is
    end 
end
2 Comments
More Answers (0)
See Also
Categories
				Find more on Loops and Conditional Statements in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

