设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5031|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
* F/ N% b. {' z8 \" d
  e. O' k# Q" S大家好,最近学习PlantSimulation,0 X8 C5 N) g; N# `1 v9 w
但是method方法运行时总是提示语法错误,! @* i2 ]2 C; y9 t3 D( p
即使是示例程序也是如此,  ^, t) V9 [" q/ ]0 e
如果不添加method方法,仿真正常运行
# `" u2 }3 ?& w" r3 D/ X想问问大神或者遇到类似问题的朋友,
+ F& T+ d+ J4 a, ]有没有什么解决办法,大家一起交流进步!
! Q+ ]2 p* r2 B( V( F8 G+ ~[补充1]我想可能是method没有编译,在v13中找不到编译选项
: F$ C& `: {6 N+ _; l, u1 l[补充2]下面的代码运行到第一行就提示语法错误  \& t* L# U+ Z% g4 G
var i:real
9 K# [5 a' U. H* \i:=z_uniform(1,0,1)+ z" m9 F9 J5 b  N- R
@.createattr("type","string")6 S! l% C( k: n% @7 N' F7 B6 [
if i<0.2
" G, d& P1 e/ [# J. X( F$ P2 A# w        @.type="red") a0 ~- X; S! d# u# X, u
        PartRecord["Number",1]+=1
* T0 Z+ t+ X/ W0 i' Ielseif i~<=0.5 and i>~=0.2' \" o1 E& P1 X, d. I2 ?- R3 _
        @.type="green"
) ^: y5 {  R+ c% j4 I        PartRecord["Number",2]+=1$ x/ c- _( W+ ^2 L4 t% x
elseif i>0.5
# r+ {1 ?6 H' D                @.type="blue"' f; u/ C+ O8 }, q$ B% W9 X. d
                PartRecord["Number",3]+=1; ?& W, K1 V% q4 L$ g4 b
end
3 z' M$ A: V$ W0 ^3 M  u8 c( e6 e2 i/ a: B: k
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑
# ~$ P( c9 |2 X
" t1 B( l  S0 S! K$ b7 JC:\Users\Administrator\Pictures\plantSimulation\question1.7
% i8 n! d- _4 I, V& fC:\Users\Administrator\Pictures\plantSimulation\question1.8
' p. ?' h# D, S3 w8 K5 v" ]C:\Users\Administrator\Pictures\plantSimulation\question1.94 S% w( N0 G. S0 l, N7 L
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
5 ]2 N: |- {& B7 E4 v( H就不能把代码粘贴上来么

3 [) z/ y2 y$ D+ S% a, X! y慢慢往后学,运行出一个带method的模型了,$ W# L/ m* {4 h$ d
前面的我有时间再搭一遍
: C8 C- _, [, v! R之前因为代码太简单9 ?1 P4 q2 \& L' F8 G
一直把关注点放在软件设置上2 T; a/ U7 k/ K# b
用的13v  看了SimTalk2' E: |% ~& f1 u! Q
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑
6 `5 D6 C5 l% G' Y& E4 o% t1 ?6 m/ r( L+ w" H" s7 p
duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,
1 L' H! f; N9 {# L前面的我有时间再搭一遍
* [8 M/ Q3 m9 X, I  R/ x9 Y之前因为代码太简单
6 _6 ?/ Y" M' t  f# z5 D3 G9 [一直把关注点放在软件设置上
1 {/ s4 X5 s1 _0 L4 ^' z8 P$ Q$ Y用的13v  看了SimTalk2% F) q8 q1 ?5 g2 p
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real' P2 f* h( B+ i8 n9 u
i:=z_uniform(1,0,1)
. m1 s. D. `. r% V. i@.createattr("type","string")' _. y7 ^( T" r& g' Q- H  y
if i<0.2/ A$ X0 u( T/ J$ V! |1 Q
        @.type="red", m  r" B- R# y# l
        PartRecord["Number",1]+=1
+ J: C) q, o) o, ^9 @elseif i~<=0.5 and i>~=0.2
9 @' y* z- ]. @: W4 g        @.type="green"- _  p& k5 {& J7 Q
        PartRecord["Number",2]+=1. d& q' U. D+ p' t) C
elseif i>0.5
. v* P- e# j1 G. n$ m. w                @.type="blue"
+ V5 V- W/ j1 w+ }0 W$ C' P5 X7 ]' V                PartRecord["Number",3]+=19 y  M! j  C6 w
end3 u! u7 t' G, H5 a% `+ I
这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
9 V5 R; U% T: ~" }8 J& y$ T9 a' p) G% Z. _: [+ H$ a4 ^
var i:real
# j' l8 I# ~2 `i:=z_uniform(1,0,1)8 q1 F) X: I& R  m
@.createattr("type","string")$ c( u) T8 {$ @0 J7 C+ G$ D! K, h+ C
if i<0.2: \! K4 I' \; A- y. R
        @.type:="red";. A5 M6 {4 Q9 M% ^
        PartRecord["Number",1]+=19 ?" S. m3 F) b' j8 j) R7 L
elseif i<=0.5 and i>=0.2
4 d1 A5 J  h7 L. X* B        @.type:="green";% H" _! A6 D1 l, Q4 r
        PartRecord["Number",2]+=1
! A" L2 B" z0 S( pelseif i>0.5' R- h- l$ R, b8 Q$ o
                @.type:="blue";+ V8 m# C7 ?$ ^7 v
               PartRecord["Number",3]+=1
: H; r, r5 n6 N: V. {- |end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29
- S( n1 a* T- x9 M4 ?& z修改如下應該就沒問題
" ~; l+ H9 d) o- _4 ]7 Y3 w/ k/ J, h* S# |
var i:real
# x& O! F, T7 |9 h) G
谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:110 v: Q! L; k. t$ m2 p
2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...
9 ^( d& {" ^' \# k
谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real
: h, [/ Y- z+ `$ w7 @0 P1 ?4 ]7 d4 @i:=z_uniform(1,0,1)
# j- v; J$ M4 \5 d# o& z@.createattr("type","string")5 `3 _- Q; W- ?, m: w; }+ j
if i<0.27 s8 f( v. P- U( @" a
        @.type:="red"1 b$ t' j7 ?! A4 t! P5 f
        PartRecord["Number",1]+=1
0 S- D1 O" U: ?$ y/ xelseif i<=0.5 and i>=0.2
* B' I/ s$ D3 u$ H2 D8 X        @.type:="green"
9 g6 x( N$ t1 Z! V9 a3 v        PartRecord["Number",2]+=1
8 N; W& ]8 u' \4 O& [else 6 ?  O8 Y+ J' e, O
        @.type:="blue". k& Q# {; y0 j. {# f. X. F) E
        PartRecord["Number",3]+=1  z9 i' {7 _/ c# K1 u" z. r4 O5 ~
end
& W4 f( u% O* O% j# W) Y! h& |% w, d2 G; B
deleteMovables
1 k4 x8 ]8 j6 R% y' C. p% G+ }, wPartRecord.delete({2,1}..{2,3})
7 A  h/ H2 J; \' M0 r" E这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-14 21:32 , Processed in 0.014814 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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