Problem with how to select the best result from a loop calculation
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
Jan
2013-1-10
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)?
采纳的回答
José-Luis
2013-1-10
编辑:José-Luis
2013-1-10
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 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!