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();

Respuestas (1)

Ive J
Ive J el 24 de Oct. de 2021

0 votos

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

Categorías

Más información sobre Functions en Centro de ayuda y File Exchange.

Productos

Versión

R2021a

Etiquetas

Respondida:

el 24 de Oct. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by