设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6265|回复: 4

[交流] 时间滞后逻辑

[复制链接]
发表于 2008-4-13 17:56:34 | 显示全部楼层 |阅读模式
我想表达的程序的意思是“从一月份开始,每次运行增加一个月。逻辑是:在一月份(t=1)时,先运行grow,然后运行hire,然后会出来一个m值;接着回头再运行第二月(t=2),先运行grow,然后运行hire,然后会出来一个m值;如此循环下去,直到连着的三个月(比如t=67,t=68,t=69)的m值相等就停止”。
0 Q8 `* Z  v4 Z6 R$ @0 W程序这样写对不对?望赐教!!还有,自己设置的变量t,没有再定义,它的初始值是1吧?
1 a' n4 B" g; t. C2 Xto go; [5 ~3 @) A4 s0 D/ p
   set t t + 1
+ ~  K# @% h3 m  b0 X! [; f( ]   grow# R4 E4 r* l) n9 g: w' o  h8 K- K( X
   hire
/ r! E+ s( O$ ~. Z1 ?" x) u  p* ?$ B- ~   if  (m = m = m)[stop]
4 M, Q) M% F/ ]; M; Z' Tend+ ?9 c* u  T5 z/ d6 g' s0 o3 Z; T
.

评分

参与人数 1 +1 收起 理由
苘苘 + 1 促进交流,气氛很好!

查看全部评分

 楼主| 发表于 2008-4-13 20:11:22 | 显示全部楼层

谢谢

有没有办法能够让连着的三个月(比如t=67,t=68,t=69)的m值相等呢?
0 p" A" j7 K/ n4 m4 t+ H不谈if,程序是不是像我说的那样循环阿?$ i1 G0 I5 f) g. R
to go
! m) o4 C9 O( T   set t 14 v  e4 E  s- E! `6 k& B6 g7 ^. X
   set t t + 1
5 \/ o2 W. A1 o+ i1 |1 S3 q   grow
3 i* v) m5 ~: ?4 P4 n   hire
' L3 e/ |7 a9 Z" T5 R1 c2 Y  end* ^# w1 l9 ~$ h9 Z* w& j6 i+ ]9 Y

- N' u, S1 v: `4 `1 m$ u如果这样表达,是不是第一次循环从t=1开始,到hire;下次循环从t=2,到hire;然后从3、4、5......,并且每次循环都覆盖上次的值?
 楼主| 发表于 2008-4-13 20:56:27 | 显示全部楼层

多谢

谢谢,有点思路了,我回头再努力!!
 楼主| 发表于 2008-4-13 21:00:30 | 显示全部楼层

滞后

if  (m = m = m)这一段牵涉到时间滞后,这样的表达有问题,m值会将上轮循环的m值覆盖,但我没有解决的思路,比如将t=67,t=68,t=69的m值比较,用logo怎么编程? 能不能提供宝贵的建议啊?谢谢,(m是浮点数值)
. \# n7 t. l: N- T1 W5 z) U' m) g: e1 j0 p4 B/ @
[ 本帖最后由 wjcpcahu 于 2008-4-13 21:05 编辑 ]
 楼主| 发表于 2008-4-13 21:13:19 | 显示全部楼层

好的!

我也考虑到列表了,basic可以用定义下标来解决,但放在logo上就有点麻烦了,呵呵,多沟通
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-3-17 19:24 , Processed in 0.014976 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表