How can i correctly write an if "yes or no" statement?

54 views (last 30 days)
For Example, x=input('Do you know the area of your building?(yes/no)' ,'s') if (x=='yes') area=input('What is the area of your building?') elseif (x=='no') shape=input('is your building circular or rectangular?') end How could i make it so that if the input is "yes" or "no" that it would do one of the following commands?

Accepted Answer

Jan
Jan on 26 May 2017
Edited: Jan on 26 May 2017
if strcmpi(x, 'yes')
...
elseif strcmpi(x, 'no')
...
else
error('Please type "yes" or "no"');
end
The == is the elementwise comparison, which fails when x and 'yes' have a different number of characters.

More Answers (1)

Salam Ismaeel
Salam Ismaeel on 28 Nov 2019
Just for genral use, not necessary for this case only. I create this function:
%******************************************************************************************
% CheckYesOrNo.m
% This function return 1 for Yes and 0 for No
% Input
% chos : charater variable
% Output:
% T : Logic variable (0 or 1)
%******************************************************************************************
function T = CheckYesOrNo(chos)
chos = lower(chos);
while chos ~= 'y' || chos ~= 'n'
if chos == 'y' || chos == 'n'
break
else
chos=input('Please input y or n? ','s');
end
end
if chos =='y'
T = 1;
else
T = 0;
end

Categories

Find more on Variables in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!