Handle error from input

1 view (last 30 days)
Muhammad Sultan Zaki Rizaldy
Answered: Ive J on 24 Oct 2021
I have two input from user, the first input is receive name(string), the second is receive calorie(numeric). But sometimes user input a string to the second input, how i can handle the error from default matlab using my customize error message?
nama = input("Input your name: ", 's');
kal = input("Input your maximum calories: ");
if(~isnumeric(kal))
msg = "Error: Please input numeric to calorie");
error(msg);
end
But the result is always default error message from matlab,
Error using input
Unrecognized function or variable 'q'.
Error in main (line 5)
kal = input("Input your maximum calories: ");
Error in app (line 5)
[nama, kal] = main();

Answers (1)

Ive J
Ive J on 24 Oct 2021
AFIK input doesn't let you control the error behavior. The better approach would be to return it as a string, and validate it:
kal = input("Input your maximum calories: ", "s");
kal = double(string(kal)); % str -> double
if isnan(kal)
error("Error: the value must be of numeric data type!")
end

Products


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!