关于循环的基础知识Matlab

时间:2013-03-27 20:43:21

标签: matlab loops

我需要询问用户温度,k或K代表开尔文,c或C代表摄氏度,f或F代表华氏温度。如何将所有这些放在一个循环中?我需要不断询问用户,直到他们输入上面的一个字母。这就是我到目前为止所拥有的。

  tempType = input('What type of temperature would you like to use: ', 's');

  value = ['k','K','c','C','f','F'];

  while strcmp(tempType, value) == 1  

     tempType = input('What type of temperature would you like to use: ', 's');

  end

2 个答案:

答案 0 :(得分:1)

我宁愿这样做以避免两条完全相同的线(在R2011b中测试):

AllowedTemperature = {'k','K','c','C','f','F'};
SelectedTemperature = '';
while ~any(strcmp(SelectedTemperature,AllowedTemperature))
    SelectedTemperature = input('What type of temperature would you like to use: ', 's');
end
disp( [ 'SelectedTemperature: ' SelectedTemperature ] )

答案 1 :(得分:0)

您希望(length(tempType)~=1 || length(findstr(tempType,value))==0)成为您的时间条件