checking that a user input is an integer

8 ビュー (過去 30 日間)
Jonathan Bird
Jonathan Bird 2018 年 2 月 19 日
回答済み: Star Strider 2018 年 2 月 19 日
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 Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by