How to stop for-loop outside of the loop?
4 次查看(过去 30 天)
显示 更早的评论
Hello,
I have the below simple code.
It displays a counter of seconds.
How can I stop it with a command? NOT by pressing Ctrl+C?
I am not asking about the break command. Sometimes I want it to finish to count all the seconds, and sometimes I want to terminate it in the middle. For now I'm using Ctrl+C. I was wondering if there is a more elegant way.
THANK YOU!
for t = 1:timeDuration
disp(['Elapsed time ' num2str(t) ' seconds']);
pause(1);
end
1 个评论
Stephen23
2019-10-9
"How can I stop it with a command? NOT by pressing Ctrl+C?"
"I was wondering if there is a more elegant way"
What you are requesting requires asynchronous code evaluation, which requires something like a timer object or a GUI or a suitable class. Which would you prefer?
采纳的回答
Daniel M
2019-10-8
Sounds like you want a GUI of a stop watch.
https://www.mathworks.com/matlabcentral/fileexchange/12628-stopwatch
6 个评论
Daniel M
2019-10-9
编辑:Daniel M
2019-10-9
Read the documentation. If you want to start the GUI with the time already running, type stopwatch(clock).
If you want to start and stop the timer using keyboard commands, use the commands listed. You said you are currently using Ctrl+C, which means that you are clearing typing into the command window while your script is running.
If you want programmatic access to the functions inside the GUI, it's probably easier to just learn to use timer objects instead.
If you do NOT want to have to type into the command window, then you must have a programmatic way of knowing when to start and stop the timer. In this case, forget the GUI, program those conditions and use tic toc.
You're not being very precise in your language in what you want. If you want help, you need to properly phrase your issue.
更多回答(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!