MATLAB字符串输入如果声明

时间:2017-10-13 18:46:41

标签: matlab

我试图制作一个询问是或否的问题的程序。根据该答案,该计划将继续或终止。我不断收到错误,因为数组不具有相同的维度。我尝试使用strcmp()但失败了。我不明白真假会如何帮助我区分不同的词汇和大写词汇。 (我是否必须测试每个字母?)如果输入是以下任何一个单词,我希望程序继续“是”,“是”,“是”,“是”和“#39; ' Y'如果输入是' no',' NO',' No',' n'我真的很想明白,= =以某种方式感觉不对。 谢谢

ZZ=input('Do you want to know when you''ll turn 100?: ', 's');
NN={'no','NO','No','n'}
YY={'yes','YES','Yes','y'}

XX=strcmp(ZZ(NN),ZZ(YY)); %I thought this line would let MATLAB know everything is ok

if ZZ=='no' || ZZ=='NO' || ZZ=='No' || ZZ=='nO' || ZZ=='n'
 disp('Thank You.') 
 disp('Come again.')

elseif ZZ=='yes' || ZZ=='YES'|| ZZ=='Yes'|| ZZ=='y'

 x=input('Enter your age: '); %x is your age.
 .....

1 个答案:

答案 0 :(得分:1)

我认为如果您需要多次运行程序,则需要forwhile循环。

zz = 'yes';
while strcmpi(zz(1),'y')       
    x = input('Enter your age: ');   
    zz = input('Do you want to know when you''ll turn 100?: ', 's'); 
end