checking that a user input is an integer

4 visualizzazioni (ultimi 30 giorni)
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});

Risposta accettata

Star Strider
Star Strider il 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.

Più risposte (1)

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

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by