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

33 visualizaciones (últimos 30 días)
Kelvin Luo
Kelvin Luo el 26 de Mayo de 2017
Respondida: Salam Ismaeel el 28 de Nov. de 2019
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?

Respuesta aceptada

Jan
Jan el 26 de Mayo de 2017
Editada: Jan el 26 de Mayo de 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.

Más respuestas (1)

Salam Ismaeel
Salam Ismaeel el 28 de Nov. de 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

Categorías

Más información sobre Particle Swarm en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by