设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6648|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑 2 N6 y' V" C% a4 w
% J6 p" T6 @% e( F4 ?3 x$ F% d% q
大家好,最近学习PlantSimulation,9 Q7 z. u5 o0 j9 S5 a9 _4 Z% K0 a
但是method方法运行时总是提示语法错误,8 W2 `, L7 R1 K# F8 K% d, ?3 ~$ I/ H
即使是示例程序也是如此,* X6 {. ]1 k8 {( p
如果不添加method方法,仿真正常运行' u9 \" T5 z8 m) }0 M$ T9 q" [: M1 V0 h
想问问大神或者遇到类似问题的朋友,
4 s# o2 G: V; w: r1 C1 E+ l5 j7 @有没有什么解决办法,大家一起交流进步!
; v& M8 J3 s/ x' E[补充1]我想可能是method没有编译,在v13中找不到编译选项- |% l' j( K  }$ `% i+ i
[补充2]下面的代码运行到第一行就提示语法错误, ]) {! B& s# u- O
var i:real
6 X# S7 e9 A1 Q2 R# g8 _i:=z_uniform(1,0,1)
9 Q2 x) r  \) E, b2 c- M3 R1 ~@.createattr("type","string")
9 D6 b$ K2 A/ _- Dif i<0.2
/ M( j) o  }' O$ U; `        @.type="red"
$ F! l0 Q8 s5 m/ U3 K. k        PartRecord["Number",1]+=1- q* b; G  Z7 b
elseif i~<=0.5 and i>~=0.27 f+ _( d$ y8 h5 D6 O
        @.type="green"
7 f' ]1 T) `# y. i9 H        PartRecord["Number",2]+=1
8 T/ R' B! C/ {9 t9 S3 _elseif i>0.5
. Y3 c+ O+ J, j6 M+ x. V                @.type="blue"8 N2 o+ K4 ?9 N1 y, u7 C+ p4 r
                PartRecord["Number",3]+=1
- a% S( L6 M4 |3 \- H/ Jend
( j/ M+ C: _' Q9 B/ O" Z8 ?
& W' k) N! v5 N, o9 O. {( b
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑
( f  g  S$ z8 [4 \4 u% v$ G. f9 D1 U# m9 P# P7 s
C:\Users\Administrator\Pictures\plantSimulation\question1.7
) r4 i: {& Z  U3 Q2 kC:\Users\Administrator\Pictures\plantSimulation\question1.8
6 B% O* q" Z& j7 \C:\Users\Administrator\Pictures\plantSimulation\question1.9
9 r+ c. F& N; E/ C  x
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
; K) r4 v. ^8 s) t! t就不能把代码粘贴上来么
+ [. e9 o, T, H7 G& X
慢慢往后学,运行出一个带method的模型了,7 [7 N, J9 z; ^% r5 j$ b1 x
前面的我有时间再搭一遍1 S3 D3 T( _, Y: \2 f! p
之前因为代码太简单) B( L# u  B' S& ~* Y
一直把关注点放在软件设置上+ Z% A$ q" Y9 f
用的13v  看了SimTalk2
9 _+ f# J& E4 Y" K& O之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑 + j/ \$ D) \5 p  z7 I# w2 D0 _# Z

/ |) s7 p5 [4 q; X9 J+ Qduplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,3 ~6 |# `8 K8 o* h, ~( C
前面的我有时间再搭一遍$ o6 ?% M, s0 P# Z
之前因为代码太简单7 H8 @& P7 U* I1 _# M
一直把关注点放在软件设置上
4 F& `' I2 k" I7 X0 C用的13v  看了SimTalk2
8 ^2 L1 d- K* v  O; W! {% _之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real% N8 E! y# j7 Q! v% \2 N# |: e
i:=z_uniform(1,0,1)
% e" {- A7 y1 m! Y  e+ ]9 h@.createattr("type","string")- o( k4 p) [: w/ T
if i<0.2
- i4 u+ Z! z" |! [5 D* ^( ^( W        @.type="red": K9 n# N. i1 ]$ J1 t
        PartRecord["Number",1]+=1* s% j- M+ k8 ^4 D3 L( V* u4 g
elseif i~<=0.5 and i>~=0.2' @, |0 {# F; J, x6 \
        @.type="green"
6 m. b4 ^4 z( p; }% l        PartRecord["Number",2]+=1  d+ S: h0 U$ K) p5 g8 s9 e4 w* ~
elseif i>0.5
/ m" I% S+ {& t                @.type="blue"
9 R0 G& t8 F- n+ L                PartRecord["Number",3]+=1$ R) y8 {5 Z* x4 \( |- e
end
9 a' v/ _( q. r8 o这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
: i& ?7 O% h* k5 ?3 T! ?7 \. s7 Q# |, E
var i:real( Q7 a! u" T7 `, q& W
i:=z_uniform(1,0,1)
6 Z. `. @8 f. U6 E- i$ }@.createattr("type","string")2 {% G* s$ W+ m0 @( N
if i<0.2
! H" p/ l* i/ n; N        @.type:="red";( S9 w; N$ q" B( Z5 z6 ]7 v
        PartRecord["Number",1]+=1
) p+ B2 U2 }5 u" D6 {. q6 e" Jelseif i<=0.5 and i>=0.2
7 I' k/ _9 L0 J+ f/ h7 d. R        @.type:="green";$ _  u3 }+ K5 Q
        PartRecord["Number",2]+=1
8 s: W2 T: m1 `7 }! Q8 Xelseif i>0.5& J3 |" a3 a4 F6 P
                @.type:="blue";
* c) s2 _2 t1 E0 p) O- a               PartRecord["Number",3]+=1
# I3 ]0 o3 o; c0 Y) L3 u, \! `end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:295 d" l, J8 @/ e% j5 m) Z
修改如下應該就沒問題. h) @+ ]# p# d  A/ G/ o" f4 ^

% x/ m6 P% ?  H  o' x* ]& gvar i:real

0 e! k5 }% S+ O; P谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11
6 t" n# @; t  n6 I: |: _# F, U2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...
$ ?7 j. I# @1 I4 y1 L- D
谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real! V' f/ f2 M1 }  C6 ~% z
i:=z_uniform(1,0,1)
0 V/ q2 S1 p/ l) n  h+ n@.createattr("type","string")
: @) h) \' W' [0 Lif i<0.27 Y4 M3 k8 Q, Z. o
        @.type:="red"
" Y1 `- L9 `* N3 D        PartRecord["Number",1]+=1+ l4 x1 b% Q( B0 @
elseif i<=0.5 and i>=0.2' `1 n' C6 B* x9 S5 z0 L, E
        @.type:="green"! l5 l1 G4 [% S$ Q
        PartRecord["Number",2]+=1
- k  B+ u& s9 J# M$ telse
. P; a6 e9 L4 ], h% M$ Z1 j! h        @.type:="blue"
1 t7 }  O& n% I- B6 U        PartRecord["Number",3]+=17 Y2 c+ X8 ^0 ^- V' _
end
, y& D, v, N+ N( F9 q5 a0 ], ^1 W7 @% G+ D8 x
deleteMovables
% U/ c# I$ M$ W% \+ nPartRecord.delete({2,1}..{2,3})
2 O' a. ~1 |! ~- a8 z6 Z  R2 ~这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-21 04:45 , Processed in 0.018167 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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