How to stop a script if conditions are met.
1,605 views (last 30 days)
Show older comments
I am using the 'if' function to detect if a user inputs a number that is not 5 digits long. What I would like is a function that stops the script if a certain condition is met without displaying an error message.
P.S. I'm very new to MATLAB.
1 Comment
Jingyang Xie
on 6 Jan 2021
Hi Cory, have you solved this problem? I think I encountered the same problem...
Accepted Answer
Walter Roberson
on 2 Feb 2012
Edited: MathWorks Support Team
on 9 Nov 2018
9 Comments
Muhammad Usman Saleem
on 5 Nov 2022
Respected Sir @Walter Roberson, I not get the point your shared. Will you please amend this suggestion in my code shared above please?
Walter Roberson
on 5 Nov 2022
notdone = true(9,1);
while any(notdone)
if rcp(i,m)<0.1 & trcp(i,m) > 0.8
ECP{i,m}=Ecp{i,m};
notdone(1) = false;
end
if recp(i,m)<0.1 & trecp(i,m) > 0.8
ECN{i,m}= Ecn{i,m};
notdone(2)=false;
end
%etc
end
More Answers (1)
Hamid Ramezani
on 30 Sep 2019
you may use "error" function instead of return
3 Comments
Adam K
on 10 Dec 2020
Edited: Adam K
on 10 Dec 2020
I think a 'msgbox' to really alert the user what is the issue, and then the 'error' funcition to stop the code would be a workaround. This way the user is aware that the issue is not really an 'error' when they see the red error font.
msg = "You've got a number that is not 5 digits long";
f = msgbox(msg)
error(msg)
Rik
on 10 Dec 2020
I wonder if it is possible to detect if the code is running in a try block. In such cases the message might be more confusing than simply throwing the error.
See Also
Categories
Find more on Logical 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!