checking that a user input is an integer

4 views (last 30 days)
The user is told to input an integer between 1 and 59 but I want an error message to display if the value they enter is not an integer. This is what I have so far:
prompt = {'Enter your first integer between 1 and 59'};
dlg_title = 'User inputs';
num_lines = 1;
answer = inputdlg(prompt,dlg_title,num_lines);
u=str2double(answer{1});

Accepted Answer

Star Strider
Star Strider on 19 Feb 2018
There are several ways of testing to see if the returned value is an integer.
You want to see if there is any non-zero value to the right of the decimal, so test for that. You can also experiment with the rem or mod functions.

More Answers (1)

Roger Stafford
Roger Stafford on 19 Feb 2018
Test whether this is true. If so, 'prompt' is an integer, otherwise it is not.
prompt==round(prompt)

Tags

Community Treasure Hunt

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

Start Hunting!