Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2008-06-05
年龄: 39
帖子: 3
声望力: 0 ![]() |
![]()
为什么if break跳不出循环?
是不是我犯了什么低级错误? clear,clc ts=0 %系统运行时间 tm=200 %程序总时间 设为一天,以秒计算 t1=0 %绿灯时计时时间 x_1a=20 %初始绿灯时间上限 x_1b=0 %绿灯时间变量 s1=0 %绿灯时通过车辆数 i=1 %参数变量 v=0 %通过绿灯时车辆的时刻 j=0 CAR1=poissrnd(9.2213,1,30) %随机产生的车辆时间间隔 while ts<tm %若ts超过程序总时间tm,则跳出循环 while t1<x_1a %绿灯时间之中 while t1<x_1a v=v+CAR1(i) i=i+1 while v>=x_1a-8 if v>x_1a break; end j=j+1 v=v+CAR1(i) i=i+1 end t1=t1+1 end ts=ts+1 %系统时间运行 s1=j end x_1a=x_1b %绿灯时间等于绿灯变量 ts=ts+1 %系统时间运行 end |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2008-06-05
年龄: 39
帖子: 3
声望力: 0 ![]() |
![]()
这里是不是都没人来看的?真的需要帮助。。。
|
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2008-06-17
年龄: 38
帖子: 1
声望力: 0 ![]() |
![]()
我也不懂,新手学习...
|
![]() |
![]() |
![]() |
#4 |
普通会员
注册日期: 2008-08-17
年龄: 36
帖子: 70
声望力: 20 ![]() ![]() |
![]()
不是很明白你的意思
break是可以跳出循环的 但一个break只能跳出一个循环 如果想跳出多个可这样设计代码 代码:
bool=0; while () …… while () if () bool=1; break; end …… end if (bool==1) bool=0; break; end …… end 像这样就一次可以跳出两层循环 多层可类似设计 |
![]() |
![]() |
![]() |
|
|
![]() |
||||
主题 | 主题作者 | 版面 | 回复 | 最后发表 |
[求助]whos显示所占内存的问题 | 小脉 | MATLAB论坛 | 1 | 2008-08-26 09:06 |
[求助]交流电路仿真 | 傲匿思帝 | MATLAB论坛 | 0 | 2008-04-27 13:00 |
[求助]请帮忙纠错 | LIKAIYU | MATLAB论坛 | 2 | 2008-04-19 13:40 |