checking that a user input is an integer

1 次查看(过去 30 天)
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});

采纳的回答

Star Strider
Star Strider 2018-2-19
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.

更多回答(1 个)

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

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by