Check input is a string or Char if so reprompt

1 回表示 (過去 30 日間)
Methat
Methat 2024 年 5 月 5 日
コメント済み: Methat 2024 年 5 月 6 日
I am struggling to fidn a way to check a input if its any type of string or char and if so reprompt the user.
Code is below:
a = input("Please enter a number: "); %Takes user input for number that is to be converted
while isempty(a)
disp('Invalid input please enter a number!')
a = input("Please enter a number: ");
end
convtype = input("Please enter the conversion type: "); %Takes user input for the cnversion type that they want
while isempty(convtype)|| convtype < 1 || convtype > 14
disp('Invalid conversion type selection please make a selection between 1 and 14!')
convtype = input("Please enter the conversion type: ");
end
  2 件のコメント
Stephen23
Stephen23 2024 年 5 月 5 日
If you specify the 's' option then INPUT will always return a character vector:
txt = input(prompt,'s')
Methat
Methat 2024 年 5 月 6 日
so it will return that value as a charecter lets say I need to use that value later for a calculation I would need to convert it back to a numerical input. Also if I were to do this would I use ischar() to check if its charecter to ten reprompt the user to re-enter their value?

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

回答 (1 件)

Walter Roberson
Walter Roberson 2024 年 5 月 6 日
a = input("Please enter a number: "); %Takes user input for number that is to be converted
while ~isnumeric(a) || numel(a) ~= 1
disp('Invalid input please enter a number!')
a = input("Please enter a number: ");
end
convtype = input("Please enter the conversion type, integer 1 to 14: "); %Takes user input for the cnversion type that they want
while ~isnumeric(convtype) || numel(convtype) ~= 1 || convtype ~= floor(convtype) || convtype < 1 || convtype > 14
disp('Invalid conversion type selection please make a selection between 1 and 14!')
convtype = input("Please enter the conversion type as an integer 1 to 14: ");
end
  3 件のコメント
Methat
Methat 2024 年 5 月 6 日
Oh I see thanks for the help I will try using ~ in my current iteration on the code thanks for linking those explinations.

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

カテゴリ

Help Center および File ExchangeStartup and Shutdown についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by