The case of the odd case statement
信息
此问题已关闭。 请重新打开它进行编辑或回答。
显示 更早的评论
So I entered the following code and tried it with the dispaly(r) either commented out or not. Its just trying to try all case statement cases
Both ways seemed to behave wrong. See for yourself.
daylight = 1; while daylight whatever=1; while whatever r = fix(2.99 *rand) + 1; % n=1..3 %display(r); switch r case r==1 if whatever display('case 1'); end case r==2 if whatever display('case 2'); end otherwise display('otherwise'); whatever=0; end end end
% GO Figure! What am I doing wrong?
1 个评论
Jan
2011-8-17
Please format your code, see: http://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup
回答(2 个)
Jan
2011-8-17
This problem appears frequently in the last weeks.
"case r==2" does not trigger for r==2, but it is equivalent to "case 1" if r==2 and "case 0" otherwise. As you can see in the documentation of switch, the correct syntax is:
switch r
case 1
...
case 2
...
otherwise
...
end
1 个评论
Steve D
2011-8-18
此问题已关闭。
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!