switch case syntax need
古いコメントを表示
[EDIT: Wed May 25 04:59:27 UTC 2011 - Reformat - MKF]
I want a switch build a switch case statement as follows:
switch value
case {10-100}
disp('Method is within 100')
case {101-500}
disp('Method is within 500')
otherwise
disp('Unknown method.')
end
my problem is how to set case statement to check within the range 10 to 100 or 101 to 500. Thanks in advance.
採用された回答
その他の回答 (1 件)
Walter Roberson
2011 年 5 月 25 日
switch value
case num2cell(10:100)
disp('Method is within 100')
case num2cell(101:500)
disp('Method is within 500')
otherwise
disp('Unknown method.')
end
4 件のコメント
Mohammad Golam Kibria
2011 年 5 月 25 日
Walter Roberson
2011 年 5 月 25 日
If you want to handle real numbers, then why do you use the "otherwise" behavior for (value>100 & value<101) ? When we see obvious natural numbers in use, we are justified in providing a solution that only works for natural numbers.
Anyhow, here's the alternative:
switch true
case value >=10 && value <=100
disp('Method is within 100')
case value >=101 && value<=500
disp('Method is within 500');
otherwise
disp('Unknown method.')
end
david feilacher
2018 年 9 月 4 日
genius !!
Walter Roberson
2018 年 9 月 4 日
Note that for (value > 100 & value < 101) that you would hit the Otherwise. I would suggest that the problem was not created properly for real values:
switch true
case value >=10 && value <=100
disp('Method is within 100')
case value >100 && value<=500
disp('Method is within 500');
otherwise
disp('Unknown method.')
end
カテゴリ
ヘルプ センター および File Exchange で App Building についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!