作者mp19990920 (郝渴连)
标题Re: [讨论]if elseif elseif else在command window下
时间Fri Dec 20 15:09:45 2013
首先,
先假设你是真的需要这样的判断,
而非初学者常犯的 matlab 程式用 c 的概念来写。
然後我对你的程式非常的有意见,
写程式(不管是不是 matlab )都要尽量能看的出错,
#1 For i (假设是i)
#2 For j (假设是j)
#3 If 条件1
#4 执行 命令1
#5 Break
#6 Elseif 条件2
#7 执行 命令2
#8 Break
#9 Elseif 条件3
#10 执行 命令3
#11 Break
#12 Else [条件4] (当以上条件都不符合时,且又符合条件4)
#13 执行命令4
#14 [条件5] (当以上条件都不符合时, 且又符合条件5)
#15 执行命令5
#16 End
#17 End % For j
#18 End % For i
摆成这样不是好看多了吗?
请善用 IDE 与注解。
然後就可以发现,
你的条件4与5根本没有判断(我用中括号括起来),
可能你的问题源於此,
以上。
※ 引述《goldberg73 (高柏)》之铭言:
: 事情是这样的, 最近在跑一下判断式, 想看看 程式在command window 执行的过程 ,
: 如下:
: #1 For
: #2 For
: #3 If 条件1
: #4 执行 命令1
: #5 Break
: #6 Elseif 条件2
: #7 执行 命令2
: #8 Break
: #9 Elseif 条件3
: #10 执行 命令3
: #11 Break
: #12 Else 条件4 (当以上条件都不符合时,且又符合条件4)
: #13 执行命令4
: #14 条件5 (当以上条件都不符合时, 且又符合条件5)
: #15 执行命令5
: #16 End
: #17 End
: #18 End
: 在command 下, 看不到从 一开始的执行过程, 且似乎每个命令都有跑, 很奇怪,
但将 #12~#16 删掉後, 又看得到 #3~#11正确的执行过程, 就是没有重复执行命令 , 好奇怪喔~ 为什麽#12~#16 会影响前面的过程??
: 拜托高手 指点!!!! 感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.67.57.196
※ 编辑: mp19990920 来自: 111.67.57.196 (12/20 15:11)
※ 编辑: mp19990920 来自: 111.67.57.196 (12/20 15:11)