A Message Box for a Nested Loop to Report Progress?

12 ビュー (過去 30 日間)
Rightia Rollmann
Rightia Rollmann 2017 年 3 月 8 日
回答済み: Guillaume 2017 年 3 月 8 日
I have a nested loop that takes minutes to finish. I want to put a piece of code in the position of Statement2 to know about the progress of the loop (i.e., every iteration of “i” roughly equals 10 percent of the whole progress).
1) Any suggestion for a message box that shows me the progress? 2) How can I generally estimate the time a loop needs to finish?
for i = 1 : 10
for j = 1 : 200
Statement1
end
Statement2
end

回答 (1 件)

Guillaume
Guillaume 2017 年 3 月 8 日
"How can I generally estimate the time a loop needs to finish"
You can't.
"Any suggestion for a message box that shows me the progress"
Use a waitbar:
hbar = waitbar(0, 'Processing...')
numsteps = 10;
for i = 1:numstep
waitbar(i/numstep, hbar, sprintf('At step %n', i));
%...
end

カテゴリ

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!

Translated by