设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5907|回复: 10

[求助] Method方法运行时总是提示语法错误

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
9 ^) h& l* l! F. B$ V8 p/ V8 W* t  d8 U' m  p4 u/ S, u6 t0 l
大家好,最近学习PlantSimulation,  H& j. A6 j6 b5 }* R  X
但是method方法运行时总是提示语法错误,  L+ j5 i+ Y8 }7 P0 S
即使是示例程序也是如此,! W6 d6 k+ ^; j' L
如果不添加method方法,仿真正常运行
* I$ p  T7 N/ P3 [6 S想问问大神或者遇到类似问题的朋友,
7 i7 I! g! o$ J/ a3 Y9 s/ B7 ^有没有什么解决办法,大家一起交流进步!9 K( z& N1 _1 b! A0 R
[补充1]我想可能是method没有编译,在v13中找不到编译选项
' s: m: L0 S# G% K[补充2]下面的代码运行到第一行就提示语法错误
8 T. T+ L/ S% ^$ ]" Wvar i:real
6 m( W8 m/ H2 e$ Ri:=z_uniform(1,0,1): V% `5 Y, D( c: L, A+ Y
@.createattr("type","string")
( m4 H1 y3 ]+ g, Rif i<0.2
/ T; {8 R; v  \8 p4 }        @.type="red"# @1 F6 Y7 u* E( Y0 |
        PartRecord["Number",1]+=1
8 x; m$ F, N6 G0 f/ F$ v( g6 eelseif i~<=0.5 and i>~=0.24 b' n% v, A3 z. F6 Z& v' P
        @.type="green"
* l* t$ ]  c( f/ j: w9 u" k9 Z' Y( q        PartRecord["Number",2]+=17 {8 I, X! m" ^' {7 H
elseif i>0.5
5 ~) o& i5 O* K  V5 p                @.type="blue"
1 `6 f8 Y5 t8 a7 Z2 B: g                PartRecord["Number",3]+=1/ S" d! m- P$ N. f- m
end
( ^% }5 G( G2 p: R5 T. x- }1 I+ n/ ?
% x. O) e& j: |; e- E' x* ]" P2 v3 S
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑
+ E4 C/ [0 A" ?+ K0 L4 d; H$ Z/ R5 m# L  u
C:\Users\Administrator\Pictures\plantSimulation\question1.7% V0 d/ I1 B; c$ E/ O- Z
C:\Users\Administrator\Pictures\plantSimulation\question1.8
$ l- k4 G. }! pC:\Users\Administrator\Pictures\plantSimulation\question1.92 X9 r  l2 ^- ^: d7 }5 t
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
' {# }2 {, h1 o. Z* x% j就不能把代码粘贴上来么
4 D0 l! ^) Z8 L9 D+ {
慢慢往后学,运行出一个带method的模型了,' b: R/ x* y+ p* W
前面的我有时间再搭一遍' O3 v; G6 N. d( J  x
之前因为代码太简单
/ i" S( |7 {2 M3 [! B一直把关注点放在软件设置上
3 e' ]7 |$ K0 f1 o/ U+ V$ j7 d2 `, z  P0 ?用的13v  看了SimTalk2% U6 r2 Z. P% U3 ^0 W6 v$ j
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑
5 s3 ^! I+ ^, V
4 q% @" h0 f9 Y5 M& @duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,' e: l1 D3 ?2 d  V
前面的我有时间再搭一遍
$ R) H& F7 X& a: }3 g7 a0 l# g2 X之前因为代码太简单& L; m+ B  w6 U/ A) v3 q
一直把关注点放在软件设置上
# `2 X) k! J2 h0 q用的13v  看了SimTalk2
! g+ w, l, y- ]) V" p" r; A0 m+ Z之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real2 C: G- V. b# g: ^- s0 `
i:=z_uniform(1,0,1)
  R+ R5 b7 ?' e# c8 S3 l' J/ S@.createattr("type","string")6 O8 p6 h4 Y% I$ f
if i<0.2
. b$ J/ D, v; E% i; B        @.type="red"; I, Y3 I1 v( }0 `# [4 ?
        PartRecord["Number",1]+=1/ R- V0 P- w& A6 L$ n
elseif i~<=0.5 and i>~=0.2" H% M& ~/ V" g/ @1 I* W* B
        @.type="green"
, y5 x2 q* y' z, G( b( ^( b$ e        PartRecord["Number",2]+=1
. u  Q2 n; L# B6 q7 R2 ]4 G" Ielseif i>0.5( Z/ s5 j# c" W/ q
                @.type="blue"5 ?% Z; k0 r" J0 x, u. F, |0 k: ~
                PartRecord["Number",3]+=16 }7 i! h# f+ h: }
end
- j, R% {- g" l4 i) O$ J这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
( ~- m9 C/ z! c+ N' {; Q( j3 o7 j
var i:real3 ]+ j/ C6 f* S6 @( l, b* E6 N% X
i:=z_uniform(1,0,1)
. d5 i2 U. j8 [- Y- z@.createattr("type","string")' ^! t4 o7 S2 x1 M2 ?
if i<0.2
0 c7 h8 \3 ?5 i. O, C4 W6 a2 F$ H        @.type:="red";# |1 u) g: b' T1 d
        PartRecord["Number",1]+=19 z1 ~  e- r/ o* ?! |. Z
elseif i<=0.5 and i>=0.2
$ a! w0 d: w: Q6 p3 `, p8 @4 a$ c        @.type:="green";
4 ~) B/ H3 y' d+ n: A: ]1 g        PartRecord["Number",2]+=1, W3 \% S/ I% G5 m8 B& @
elseif i>0.5
& V1 U5 L' _1 v9 c3 `& Y                @.type:="blue";4 O5 {3 {7 T: k. c* Y
               PartRecord["Number",3]+=1
- O' c/ ^( r" l* _end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29
5 x: D* f+ R$ ~& Z" B) N/ D修改如下應該就沒問題
( a; D# R# L+ ]+ X% n% V8 [/ P  t: N; p; t1 w
var i:real
) r' m$ e+ f. c
谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11) y( q+ o3 @& F( e4 h/ H
2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...
# X& ?4 A8 N5 J
谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real
" m3 O7 P* o( Y8 {0 c. P2 q$ J* Hi:=z_uniform(1,0,1)2 Y# |0 O* S1 m
@.createattr("type","string")
% H/ y" v) B* r# F3 U* S  E+ Lif i<0.2
0 i- x9 Q7 _$ q. G  V' ?2 ^        @.type:="red"
0 C0 S. S( D' B0 t5 A3 s* F. i7 F$ t        PartRecord["Number",1]+=1
2 ^5 c, A2 h% t- K/ s/ }  eelseif i<=0.5 and i>=0.2
  `! O$ f& J1 I2 }6 Y) k        @.type:="green"/ t9 s* M2 m6 z$ Q) G! I
        PartRecord["Number",2]+=1
: C$ q+ I! f' z( Melse
; A1 _5 I! @8 @; y7 r        @.type:="blue"
0 i& ^* q1 o& d' a8 Q; }; }        PartRecord["Number",3]+=1
/ S6 e7 \; [* P/ v; wend( Q. [3 r' R  I; y
) T6 F& p' C  w
deleteMovables3 f8 J' Y' m" V
PartRecord.delete({2,1}..{2,3})0 Z1 C! N3 y5 q+ y
这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-16 17:13 , Processed in 0.017296 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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