设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6235|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
4 b( h4 W" Q# Q. Y. S' ~9 q( R/ E$ [$ O4 l9 [; `3 o
大家好,最近学习PlantSimulation,
( [0 R* H5 `) `0 y- X( C9 q( \. _1 I8 w但是method方法运行时总是提示语法错误,$ {% p5 V3 B. H/ s5 ~
即使是示例程序也是如此,& a$ l+ t; b7 a. o; r, }& P
如果不添加method方法,仿真正常运行
: k7 m: Z0 D6 e0 k5 {: M想问问大神或者遇到类似问题的朋友,4 _$ g4 A! l8 r# N
有没有什么解决办法,大家一起交流进步!6 u  M( _2 C( E& k6 r
[补充1]我想可能是method没有编译,在v13中找不到编译选项5 C8 B: S% `" |. x
[补充2]下面的代码运行到第一行就提示语法错误- C' v% c2 y/ w
var i:real, ?& ^) @' ?" a8 J& D3 e! ~3 ?
i:=z_uniform(1,0,1)1 X( o7 A, Q5 ~) g
@.createattr("type","string")
0 @& l! g7 d% O2 R  D. oif i<0.2
* x0 g: j' w1 ?2 L- o        @.type="red"$ w8 N, G- X" f& h/ h8 b% n' ?
        PartRecord["Number",1]+=16 |$ [% P8 p$ _  j% l$ e7 Z/ m
elseif i~<=0.5 and i>~=0.2
' I5 y) h8 \5 _9 ~3 @  G5 `        @.type="green"1 @% p5 j# _5 U! g
        PartRecord["Number",2]+=12 J2 p( S( p$ e
elseif i>0.5/ u4 ^8 z  m" p2 B! j3 ]- z
                @.type="blue"5 T3 v, w" ?% O% ]1 T+ ?+ v
                PartRecord["Number",3]+=1
/ m2 |# L9 L& D# _end
0 d& j) z. K/ v: f4 B9 r
4 w. s0 j, h! Y! I. u5 @& M( c
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑 $ L. ?+ q$ e, D* f: }! V
* B. \: V* [! a2 `  E0 |
C:\Users\Administrator\Pictures\plantSimulation\question1.7; x! t1 {( j7 @* k. _! P
C:\Users\Administrator\Pictures\plantSimulation\question1.8
5 Z* l4 r9 o. P# SC:\Users\Administrator\Pictures\plantSimulation\question1.9
4 v  X0 ~8 g  |% m3 p
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
% `' l" j, _" k6 [- W就不能把代码粘贴上来么

/ Z8 g6 I% `/ M% x慢慢往后学,运行出一个带method的模型了,. J4 l% \/ n# @5 j" E
前面的我有时间再搭一遍
  a" E9 S4 n8 o之前因为代码太简单
$ C1 n/ D( `! F8 Y4 T  r2 N一直把关注点放在软件设置上+ u& {( x- \. O, p! Y) f
用的13v  看了SimTalk2
0 q& i1 S+ ]! L" Z* ?9 @) Q% o之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑
, N0 k2 l/ ?6 f7 G: @% M
6 R' F  w5 I" Z. X$ W* Dduplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,! O8 F/ e& t  N1 [" E2 e
前面的我有时间再搭一遍0 n  r$ }9 s8 A; j
之前因为代码太简单7 }. \1 U7 _; v/ e6 ?
一直把关注点放在软件设置上
" x# z4 s8 W4 o. J4 ?2 ~用的13v  看了SimTalk25 P# \' b' [' f' ~- Q9 g& ?7 W
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real
/ U- A) V7 z4 y% _8 K$ ni:=z_uniform(1,0,1)
! O. I, I' `. U: I@.createattr("type","string")% y5 v% B* A/ Q( x7 E! u4 p; m, G
if i<0.24 d4 s3 @9 g) V# {, ]
        @.type="red"
* `  n2 W6 e, I0 ]4 N9 j        PartRecord["Number",1]+=1% @/ Z, b% ]# ?
elseif i~<=0.5 and i>~=0.2
3 v9 \; }' X$ V% f        @.type="green"
& \" W3 `  i+ R( B$ n' F        PartRecord["Number",2]+=16 Y6 U. V( n9 Y6 x, {% w- h
elseif i>0.5$ R9 f5 R+ E/ e9 ~5 W, J5 ^, R, u
                @.type="blue"( M( y( M2 L8 g' p; ?# c' E6 m
                PartRecord["Number",3]+=14 {  G" E& U7 P0 [5 J8 m2 i
end
3 w6 q0 a8 d' L2 X这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
/ z5 C) j1 g3 s, L& R7 L* `. n8 G; z
var i:real7 D% B/ n0 f1 V( H# b
i:=z_uniform(1,0,1)
% _' N, B; l: q8 C@.createattr("type","string")0 e0 G, q0 M3 e+ i/ e5 B) {  K2 [
if i<0.2! I; V8 ^5 H% g7 L2 y
        @.type:="red";+ l/ B" ^1 r7 |8 h) n8 i* L0 R# j
        PartRecord["Number",1]+=1
* [0 C$ z; V, d; Z  M/ Kelseif i<=0.5 and i>=0.20 K5 i  D% m' H% ~: b" i
        @.type:="green";
) r. y1 T, l; X        PartRecord["Number",2]+=1
* D4 O" m, p4 E7 W  I. aelseif i>0.5
, g* a# J9 z  ^( J! Y& y                @.type:="blue";; K/ e7 k9 V+ n9 F
               PartRecord["Number",3]+=1' M% v: O; r( w9 z$ `
end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29
, w& P" I7 [- T" ?" g! C( s修改如下應該就沒問題; h) M/ ]5 w5 h" Y

) T" H$ T3 ^: W& p1 o0 W5 Fvar i:real

, T" _3 F# k5 t$ [( }) D5 P谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11: R; r/ G0 V  Y7 e9 p* ?! L1 `6 d
2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...
. A0 [1 X3 u6 G7 h
谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real
: F4 h4 i9 y: b# _% d$ R1 X9 m/ xi:=z_uniform(1,0,1)" L) L3 }# j% i; W+ B* ^3 N
@.createattr("type","string")9 S9 F4 `$ K3 Y$ x/ M  l
if i<0.2
  p9 N; h) d# F, d        @.type:="red"2 ^2 q' A' l, M" y
        PartRecord["Number",1]+=1" u6 b) \/ n1 h6 B  u0 V2 N
elseif i<=0.5 and i>=0.2
: C2 X# a* \& b" B% U6 j* y. ?, g        @.type:="green"
! L9 t$ `5 F+ t0 @        PartRecord["Number",2]+=1( f- @5 s3 ~! G8 Y& q+ c, b
else
5 N; \3 W  V7 K( u        @.type:="blue"
# p$ j$ O3 x5 f1 U# ^        PartRecord["Number",3]+=12 G7 o, }7 Q! T4 O0 x- }" R7 k) a) N
end2 ]+ c0 m; J9 r7 i. r* \# N

+ ]3 r, d/ s' A% \deleteMovables( J4 g9 v9 e3 }6 L, r  [! Y% i/ k
PartRecord.delete({2,1}..{2,3})
! f& p6 S! p$ e# g" o. e4 o这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-13 03:54 , Processed in 0.018543 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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