Having problem in using or statement in switch case
1 回表示 (過去 30 日間)
古いコメントを表示
Problem: "Return the number of days in a given month in 2017. If the input is not a valid month number, return -1.
You cannot use IF statements"
Where is the problem in my code.How can I use or statement in switch case?
Firsly I tried case as number but it didn't work
then I tried as character but it also didn't work
function d = daysInMonth(m)
x=[31 28 31 30 31 30 31 31 30 31 30 31];
c = num2str(m);
switch c
case '1'|'2'|'3'|'4'|'5'|'6'|'7'|'8'|'9'|'10'|'11'|'12'
d=x(m);
otherwise
d=-1;
end
end
0 件のコメント
回答 (1 件)
Walter Roberson
2020 年 5 月 7 日
case {'1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'}
However, you do not need to convert to character vector.
switch m
case {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}
end
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!