设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10700|回复: 7

[求助] 循环

[复制链接]
发表于 2008-4-10 17:04:15 | 显示全部楼层 |阅读模式
5仿真币
关于logo的循环结构程序可使用哪些源语啊?如loop,之类的,basic有很多,但在logo上好像不能使用。
 楼主| 发表于 2008-4-10 17:26:56 | 显示全部楼层

谢谢

我再摸索摸索。
发表于 2008-4-10 17:56:17 | 显示全部楼层
loop有吧
# Z8 G0 z8 @8 y; oloop
. X, `; G: ~* s( ?; F  Y2 N5 b) vloop [ commands ], m- Z/ w" D/ ?! z6 B' O: ^
Runs the list of commands forever, or until the current procedure exits through use of the stop- I0 z$ q. M/ Z$ U2 q; j& ?
command or the report command.
7 ^9 {% H' j4 B3 G9 sNote: In most circumstances, you should use a forever button in order to repeat something forever.
$ M% f- o. U6 M  X* @5 SThe advantage of using a forever button is that the user can click the button to stop the loop
6 H8 x- H8 b0 ^* \8 `& X
- V5 m$ R4 l/ h(version 3.1.3)
9 T! d1 x2 Y# w, N( ?4 j不过好像不大推荐
 楼主| 发表于 2008-4-10 23:51:54 | 显示全部楼层

补充

globals[p ]
5 Z, S4 W, e' h8 yto setup1 I3 d8 |- |* T: P* j
   set p  1
# k& W. H; }2 }  \, ^3 d   set p  p + 1
. u- n8 r# b9 b) j) z   show p
1 B3 K$ _) M, g) U  A: v: k   end3 v- C6 t& l. m, g
我想表达的是让这个循环一直下去,直到p=100时才停止,logo语言该怎么写呢?除了repeat,可否用其它原语表示。
& a: P" e5 H; x( R8 E, K- z$ b% a/ n0 x5 ^  L" x
[ 本帖最后由 wjcpcahu 于 2008-4-11 10:25 编辑 ]
发表于 2008-4-11 10:35:25 | 显示全部楼层
将该procedure与一个forever的button建立联系,同时procedure中加一个if p>100[stop], 不知道楼主说的是不是这个意思
 楼主| 发表于 2008-4-11 10:58:31 | 显示全部楼层

多谢,看来还是要用repeat

globals[p ml ]7 E- X* E1 B% h& c$ ~8 m# o
to setup
4 l% C) [6 C) G, ?* }set ml n-values 200 [ifelse-value (random-float 1 < 0.3 ) [0] [1] ]# O: ?; s  p# o( C' [
set ml filter [ ? = 1] ml
5 V9 L7 F3 u2 v& j) Z: x! J4 r& Oset p  1
: Q# K; A7 g" b% @repeat length ml [ set p  p + 1]! V" L% H) l! O% a* |5 i1 b
if p > 100[stop]" p: B* ^) w7 d8 D- e
show p ' I: I1 l3 R. ~+ R' e
end
8 M# A/ K) [' R4 P) k* W6 }! d; j* K+ a
像这种简单的迭代加和还可以,但如果牵涉到多变量的迭代加和,不知道该怎么表达。还有,如果想取出运行中每个阶段的值而不仅仅是终值,该怎么取呢?
+ M2 ?  m8 s3 ~: I$ J: g1 S; V/ }* l/ x1 b; c2 B* y
[ 本帖最后由 wjcpcahu 于 2008-4-11 11:25 编辑 ]
 楼主| 发表于 2008-4-11 13:37:42 | 显示全部楼层

感激!!

什么都不说了,都在程序里了。
发表于 2008-4-11 15:21:00 | 显示全部楼层
reduce也可以做累加7 W( O7 B& B! T+ ~4 ]: b- S
reduce [ ? 1 + ? 2 ][1 2 3 4]* Q( n7 N3 J, K$ k% i  b! b
相当于(((1+2)+3)+4)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-10-26 01:18 , Processed in 0.016402 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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