How can I make a function restart if a string input by a user is not terminated properly instead of it breaking the code with an error?
1 view (last 30 days)
Show older comments
Andrew Williams
on 15 Apr 2017
Commented: Andrew Williams
on 15 Apr 2017
I am new to this software and I understand that this is an elementary question. An example of what I'm trying to figure out is this:
function [n]=name
n=input('Please enter your name')
If the user enters 'Name and leaves it like that, the code will break. How do I make it restart the function to take the input again?
0 Comments
Accepted Answer
Steven Lord
on 15 Apr 2017
You want the user to enter a name, not some code that's evaluated to generate a name. In that case, call the input function with the 's' flag as shown in the second section of the Description and the second Example on that function's documentation page.
More Answers (1)
the cyclist
on 15 Apr 2017
One way would be to write the function with a while loop, something like this
function [n] = name
n = '';
while <some condition that you specify for _n_ goes here>
n=input('Please enter your name')
end
end
The while loop will keep repeating until the user puts something that meets your condition.
See Also
Categories
Find more on Characters and Strings 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!