设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6264|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
" q; {* B& V0 o( u1 M: N" D7 q: \  S1 a5 M4 i+ |$ \. w% y
大家好,最近学习PlantSimulation,! F/ j: y- J- b) m  E7 c
但是method方法运行时总是提示语法错误,4 i! |$ p: f3 x5 |1 Q
即使是示例程序也是如此,
* \9 |( g  j" e如果不添加method方法,仿真正常运行
( u2 Z, @! c4 h7 W想问问大神或者遇到类似问题的朋友,
+ r' C& A" f2 i+ r有没有什么解决办法,大家一起交流进步!
7 Q4 x: |" p+ C- V8 z! B& V[补充1]我想可能是method没有编译,在v13中找不到编译选项
7 [, M! l( j2 ?+ _3 h; }+ y[补充2]下面的代码运行到第一行就提示语法错误
; X1 R( m1 G- c1 R- j' P) cvar i:real
: j" i" t8 D/ U/ |' Vi:=z_uniform(1,0,1)
* @  d9 _& z4 @* |% ?' N( x" Q@.createattr("type","string")
% y" Y, w8 U2 k0 o( h5 xif i<0.2
) P  u( J0 F2 g- c* R        @.type="red", y: ~- p; t2 Q
        PartRecord["Number",1]+=1
8 i* V; ^! D' a- }  ~1 Lelseif i~<=0.5 and i>~=0.2' a- f" s2 H# U( S! Y! h
        @.type="green"
8 e* q: X+ C5 L/ y) k9 c        PartRecord["Number",2]+=1
: M: ~* l  D4 s/ Q( oelseif i>0.5
: s8 }" p% q% f0 g                @.type="blue"! E  p9 W) |$ e9 `3 M
                PartRecord["Number",3]+=10 |" j4 t* ~+ g, b
end/ t" @( A! w! X$ R9 `( C
1 E4 }. F8 @$ Y
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑
' ~2 E+ x9 |* W( Y$ }; E8 W
; @% [5 }" a6 bC:\Users\Administrator\Pictures\plantSimulation\question1.74 M7 \. P! R6 ]- ~( O
C:\Users\Administrator\Pictures\plantSimulation\question1.8! E3 ]$ a$ I% P9 x+ K
C:\Users\Administrator\Pictures\plantSimulation\question1.9+ B- e" y; V8 m
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14$ W" p6 T9 d. p0 V
就不能把代码粘贴上来么

$ ^* e' d7 L' J' Z/ c! C慢慢往后学,运行出一个带method的模型了,
- s1 N8 B# F9 G( @3 v: \前面的我有时间再搭一遍5 _4 @; e& P2 k1 X" |5 u8 f% i
之前因为代码太简单$ h. J6 O$ w9 Y6 ^$ ]) z
一直把关注点放在软件设置上+ e* Q: l) f9 h
用的13v  看了SimTalk21 b" [$ M* R: A2 R8 G% S
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑 9 [( b7 c. s3 ~7 O

7 l6 ~7 u- C# }- Zduplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,) l5 R' W' n. J7 ]; v" K* K
前面的我有时间再搭一遍$ q4 E5 {) j& c! ~. i
之前因为代码太简单, M! ?2 @2 L$ ]  q' E$ X! \
一直把关注点放在软件设置上
, f9 X7 S8 }# F/ k% W用的13v  看了SimTalk2
1 l/ E2 [, F5 w9 L之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real
+ W1 q7 d. [% V/ ~6 {+ F% Y. ~i:=z_uniform(1,0,1)
; o* x6 Y1 _  [% F1 [) U- O# X@.createattr("type","string")6 B7 F1 s: R! m% F/ M
if i<0.2
! X1 O6 H+ ^; \8 t        @.type="red"
$ }% F7 }* g: ]& e' ^# n2 L        PartRecord["Number",1]+=1- E) ~5 d" r  U8 G8 `2 }- l
elseif i~<=0.5 and i>~=0.2
. S- ]9 f$ p& p( q) H# d6 H        @.type="green"4 X. m- y1 U8 K5 `6 E3 t
        PartRecord["Number",2]+=1/ N9 F* m! ~) a9 s, b2 n% t8 v6 o4 j, W
elseif i>0.55 m9 U% \) ^/ w! n: S; R" Y9 j
                @.type="blue"9 a# K8 C7 G  o; l
                PartRecord["Number",3]+=1
7 Z) x2 S/ z( s4 dend" p3 n$ v( d( N. `( Y
这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
0 E% ]  i) L/ Q  P7 t8 x; M) B3 S( v) A. b+ ?) ^* }
var i:real
& T* u* e, a3 \/ }) }6 ~1 r4 Ei:=z_uniform(1,0,1)8 ]) H- L" |% k
@.createattr("type","string")
8 D5 t4 B2 q- ~6 s; `! s! i( aif i<0.2" t  e! F# V7 V; X
        @.type:="red";
  U" X+ c% B7 D' m* j        PartRecord["Number",1]+=1
" E/ {: {( a6 Q# {0 P' p0 o  n3 kelseif i<=0.5 and i>=0.2
' Z" \4 e" ^* b8 S        @.type:="green";
2 b- D. [5 |; H- u' {9 f, K- t9 S% k        PartRecord["Number",2]+=15 X, T9 g! G" a1 U# s5 P/ G' `
elseif i>0.52 K6 g- }! A2 D2 S+ V$ _8 k" B' B
                @.type:="blue";8 M$ e& a- A- b8 D2 s  b$ a
               PartRecord["Number",3]+=1
$ m/ z4 I- l( e3 k6 ]end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29
* R) v* `# w: i7 c, b修改如下應該就沒問題
8 D9 B5 r, L# N' j5 I
  f3 Y9 X- |1 h. Y2 Z7 ]. T+ tvar i:real
3 C3 I2 r  s' Z( ]8 I
谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11
$ n  K' b9 |- R0 N$ m, P' I2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...
, l' i& f0 L% O7 s7 K: a4 I
谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real+ M) ^1 Q/ R& L0 Z6 ?4 B
i:=z_uniform(1,0,1)
- Y7 Q. e. M- o" u: ~@.createattr("type","string")6 [9 W  o$ ?1 T! ^7 s! e
if i<0.2( o& q& o. d3 c4 z8 P' |+ N
        @.type:="red"- u; d* C; }) Y+ Z; E% |! A
        PartRecord["Number",1]+=1
' \2 {9 _! @# @% qelseif i<=0.5 and i>=0.2; [& w. ]9 c$ \, Z; l
        @.type:="green"3 [# R) q$ b  c  t2 y
        PartRecord["Number",2]+=1- ^0 B5 u1 m7 P4 F7 c& ]; C4 h. m
else
* f$ d& a0 L2 X5 F6 C1 L& o        @.type:="blue"
* J* b' k* `: E! m( ]5 r  _        PartRecord["Number",3]+=1, K3 p, N- K6 ]# ~) r0 P
end
; }8 ~  d3 Z3 l6 v( P+ p& y6 m) Q' B: }) N" ?
deleteMovables( O! O) ^$ ^: W- m
PartRecord.delete({2,1}..{2,3})
( F! {- Y8 y, L/ n/ H1 J5 Z% U. u这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 00:19 , Processed in 0.022102 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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