设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9654|回复: 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有吧
5 c& W% F& b' x; Vloop
  e4 L5 u* F) J2 P( r, r+ [loop [ commands ]8 {* m- P1 ?; n# T- D9 o3 H% I
Runs the list of commands forever, or until the current procedure exits through use of the stop/ l+ b. R6 i4 a3 v& C/ ]
command or the report command.+ F/ g% L) e+ x% g5 y% z! R0 T
Note: In most circumstances, you should use a forever button in order to repeat something forever.
: D4 `% X5 _. _* LThe advantage of using a forever button is that the user can click the button to stop the loop
7 K' r0 f2 k" ~4 z0 M0 ?- v! d+ v: J7 R, {% r* q  q- p8 G5 W
(version 3.1.3)# Z1 M% N  V1 o# U: |) O' S
不过好像不大推荐
 楼主| 发表于 2008-4-10 23:51:54 | 显示全部楼层

补充

globals[p ]
. B& h5 X/ p8 R0 A4 M( tto setup% p3 N; L- K- {; {: w  T' ?
   set p  1
( @' x* @( B7 g- o9 d! j   set p  p + 1+ C2 k% @" X8 b  t8 |* D
   show p' v  |0 V8 T( ~# y
   end% ~( n1 z; f4 `5 u
我想表达的是让这个循环一直下去,直到p=100时才停止,logo语言该怎么写呢?除了repeat,可否用其它原语表示。. D2 [! d9 o+ `- u7 y1 y

8 B' B! `9 T' Q; Y[ 本帖最后由 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 ]: b' t4 a9 K- H% E& b2 v2 s
to setup
( B6 v, P. |2 I+ z1 t5 {set ml n-values 200 [ifelse-value (random-float 1 < 0.3 ) [0] [1] ]( R" |* s* A( \$ `1 K6 h6 p
set ml filter [ ? = 1] ml* R. S2 M0 M+ B3 I# f, H
set p  1/ A3 p2 s: f! B
repeat length ml [ set p  p + 1]/ Y6 j" J" \7 `& g7 k7 i
if p > 100[stop]
0 s7 c1 b- c2 y5 r/ _show p ( N4 u( A" ^1 U3 L% |2 _9 R
end4 J3 V* R7 ]$ C) Y

/ c5 @; A7 U" Y6 R7 F8 o% Q像这种简单的迭代加和还可以,但如果牵涉到多变量的迭代加和,不知道该怎么表达。还有,如果想取出运行中每个阶段的值而不仅仅是终值,该怎么取呢?* d: c: Q8 C+ {  o7 L6 u" o

& O  ?1 p; t) Q[ 本帖最后由 wjcpcahu 于 2008-4-11 11:25 编辑 ]
 楼主| 发表于 2008-4-11 13:37:42 | 显示全部楼层

感激!!

什么都不说了,都在程序里了。
发表于 2008-4-11 15:21:00 | 显示全部楼层
reduce也可以做累加- b+ W8 {) r1 U4 S  M
reduce [ ? 1 + ? 2 ][1 2 3 4]
7 `6 V/ c$ `( M& [- ^: ~相当于(((1+2)+3)+4)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-12 21:18 , Processed in 0.012800 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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