Help with restricting input

12 ビュー (過去 30 日間)
John Furman
John Furman 2020 年 1 月 29 日
コメント済み: Fangjun Jiang 2020 年 1 月 29 日
I am working on a script that asks for an input to be given between 1 and 100. I would like to have the restriction that the input is limited to between 1 and 100, and that the number must be a whole number.Here is the code:
number=input('Enter a whole number between 1 and 100:')
while number<1 || number>100
display('Not a valid number please try again')
number=input('Enter a whole number between 1 and 100:')
end
I can't figure out how to get it to set a restriction to non-whole number values. Please let me know how to specify this. I have been searching for a while and haven't found the solution.

採用された回答

Fangjun Jiang
Fangjun Jiang 2020 年 1 月 29 日
Suprisingly, just run your specification and it works in MATLAB
number=input('Enter a whole number between 1 and 100:')
while number<1 || number>100
display('Not a valid number please try again')
number=input('Enter a whole number between 1 and 100:')
end
  2 件のコメント
John Furman
John Furman 2020 年 1 月 29 日
I would like to restrict the input to where if you put in a decimal value, ex. 4.5, the script will display Not a valid number please try again.
Fangjun Jiang
Fangjun Jiang 2020 年 1 月 29 日
change to
while number<1 || number>100 || round(number)~=number

サインインしてコメントする。

その他の回答 (1 件)

Adam
Adam 2020 年 1 月 29 日
validateattributes( number, { 'numeric' }, { 'scalar', '>=', 1, '<=', 100, 'integer' } )
You would have to put a message together yourself though if you don't want the error message itself returned on command line

カテゴリ

Help Center および File ExchangeEntering Commands についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by