Afficher commentaires plus anciens
how to write "IF" function to only accept numbers NO letters
need to ask input number (if user type any letters need to ask again to give number)
i know basic IF function but i need to know how to verified the input as number or letter ?
thank you Vijay
Réponse acceptée
Plus de réponses (3)
Wayne King
le 19 Fév 2012
Hi Vijay
if isletter(input)
disp('Please enter a number, not a letter');
end
Image Analyst
le 19 Fév 2012
Did you try using ischar() and isnumeric()? Or try something like this, or similar:
% Ask user for a number.
defaultValue = 45;
userPrompt = 'Enter the integer';
caUserInput = inputdlg(userPrompt, 'Enter the numeric value',1,{num2str(defaultValue)});
integerValue = round(str2num(cell2mat(caUserInput)));
% Check for a valid integer.
if isempty(integerValue)
% They didn't enter a number.
% They entered a character, symbols, or something else not allowed.
integerValue = defaultValue;
message = sprintf('I said it had to be an integer.\nI will use %d and continue.', integerValue);
uiwait(warndlg(message));
end
3 commentaires
vijayasinthujan vijayaratnam
le 19 Fév 2012
Image Analyst
le 19 Fév 2012
They are built in functions to check if the argument is a character or a number. Are they not in your help?
Jan
le 19 Fév 2012
Simply use "help ischar" and "help isnumeric".
Walter Roberson
le 19 Fév 2012
0 votes
In MATLAB, "if" is not a function: it is a control statement.
We've been nagging MathWorks for years to create a function equivalent to "if", but with no success yet :(
Catégories
En savoir plus sur Data Type Identification dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!