Testing a created function
Afficher commentaires plus anciens
I am trying to write and test a function to determine whether a person is old enough to drink or not (with the legal age being 19).
For some reason when I test the function the code will run but not display the message that I set. How can I fix this code so that it will display the proper message?
FUNCTION:
function[ans] = drink(age)
if(age<19)
ans = 'no';
else
ans = 'yes';
end
TESTING:
clear
clc
addpath('Library')
age = input('Enter your age: ' );
ans = drink(age);
if(ans == strcmpi(ans, 'yes'))
disp('Old enough to drink')
elseif(ans == strcmpi(ans, 'no'))
disp('Not old enough to drink')
end
1 commentaire
Don't call variables 'ans', for starters. Also, this 'logic' is really confusing:
if(ans == strcmpi(ans, 'yes'))
...
end
Just
if( strcmp( result, 'yes' ) )
should work fine. It seems a bit odd though that you put logic in your function to return 'yes' or 'no', then more logic that effectively checks the same thing to the convert to a different string!
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Get Started with MATLAB 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!