设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7251|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
) v7 S, _# w0 Y9 m/ W
" g% L. {' y: z1 h* m- ?, u3 ~, q大家好,最近学习PlantSimulation,
. J/ ?6 f& e% k- Z+ i3 b但是method方法运行时总是提示语法错误,
* H6 _+ X) ?* L& n9 r2 J' f即使是示例程序也是如此,
6 q6 l/ D1 J0 J9 {" L2 M6 M如果不添加method方法,仿真正常运行
: O- _, \1 e8 f2 e想问问大神或者遇到类似问题的朋友,
8 K& P! \1 H$ B4 h8 _) q有没有什么解决办法,大家一起交流进步!6 \& T" g% y* I/ I5 m/ y* y  G
[补充1]我想可能是method没有编译,在v13中找不到编译选项
5 L7 \. Z' Z/ O" M) ]  O. l[补充2]下面的代码运行到第一行就提示语法错误
7 u8 W, h. g8 H: ]+ Lvar i:real- F# t# Y* j" c, n9 h
i:=z_uniform(1,0,1)
, S5 w3 f* H( w& T- k7 J@.createattr("type","string")+ P; T) ?6 ]# t6 p. u
if i<0.24 T: D+ a9 U- v  W0 N9 D9 d
        @.type="red"
* q3 K2 t% J: q        PartRecord["Number",1]+=13 |/ ^$ Z4 q, f! @1 g, N
elseif i~<=0.5 and i>~=0.2
& M1 R$ |  Y4 c8 d8 }- f3 D" `        @.type="green"
0 n$ X' @* @6 W) J# Q$ T, g$ D: S        PartRecord["Number",2]+=1
& Y. V% ^3 B+ aelseif i>0.5
0 ?& I3 w" h/ F. D8 S2 Z2 m                @.type="blue"5 n0 z3 J* E  Q- r- \; N
                PartRecord["Number",3]+=19 u6 R, u6 W, [# v) n  p2 w& _4 j. I
end+ o, V# k8 G; q7 s9 i, ^

1 N6 K0 B3 ^1 y
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑
3 }6 J+ I6 c4 A  Y$ K: w( w7 ?& a- X' \2 J1 I1 \! m3 s: g4 {
C:\Users\Administrator\Pictures\plantSimulation\question1.77 W& n8 O1 c# p
C:\Users\Administrator\Pictures\plantSimulation\question1.8
( n& J2 U9 t4 p, F/ L6 Z6 AC:\Users\Administrator\Pictures\plantSimulation\question1.9( f9 Z9 e. r1 Z. J/ m
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14. S0 `9 F! m, ~& D, }
就不能把代码粘贴上来么

$ f. A3 Y/ X; g/ c' z慢慢往后学,运行出一个带method的模型了,
* N- |) p9 A" Y4 H- c7 p! w2 R& C2 ^前面的我有时间再搭一遍
) z# R- {3 [# A# d% e3 d0 }之前因为代码太简单
, q, |, k, o; v) s( i0 g一直把关注点放在软件设置上6 D; }, I7 O+ Z- h& K+ i) ?. B# ]
用的13v  看了SimTalk2
+ u2 Q, s, z' Y. D之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑
; Q' g" B* L* A2 g7 F1 }% h* m7 x  \: S: v5 \$ ?# N
duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,
1 G" e) g: O# L# @: b: f前面的我有时间再搭一遍
$ k, u( [# s3 u2 V/ O1 M, L之前因为代码太简单
: K* A- l. i: F一直把关注点放在软件设置上$ {% k+ ~' o6 ]3 |, t- @
用的13v  看了SimTalk20 S, H; M3 w1 B( a2 R
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real
$ e3 B; Z* O. d  qi:=z_uniform(1,0,1)
5 D: }" e7 E3 T5 `( A6 v3 x7 M( K@.createattr("type","string")2 u) P0 \4 T: t- O3 j; s5 C7 k: |
if i<0.2
1 j% }  Y! k7 H2 _3 L2 G        @.type="red") P2 c/ J  |! N1 r
        PartRecord["Number",1]+=1
- p# B+ l# T$ Eelseif i~<=0.5 and i>~=0.2' {- X% m7 K2 f
        @.type="green"3 ?9 {( M7 [6 ~5 U% i. E: P
        PartRecord["Number",2]+=1# l3 a! ~7 Q# y, P3 N
elseif i>0.5; D7 u( N1 D( }6 s, u+ j
                @.type="blue". h( D0 B4 P& v. O. m
                PartRecord["Number",3]+=1# a9 h! R6 c; t2 c
end* q, A% q! [, B6 x5 B* ~
这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
) L5 v: }# B# p& n# r/ Z* c$ U# K3 P( C1 V
var i:real
9 Z2 N  F# \4 i& Si:=z_uniform(1,0,1)- y# e& ]9 Y- K$ l1 s
@.createattr("type","string")0 L0 J9 I: i8 }
if i<0.2
' P! g1 [- x/ E! Y) u- [* g' f3 M  q0 _: g        @.type:="red";
3 B7 C! @! d8 n        PartRecord["Number",1]+=1
# |6 _$ u/ L8 A1 V7 C5 R0 relseif i<=0.5 and i>=0.2
9 J# E. N( {9 o* J* j- Z/ H        @.type:="green";7 p5 _# F. E- v7 R$ I4 t% c
        PartRecord["Number",2]+=1$ v* [$ S8 A4 s% K6 y1 o0 Q
elseif i>0.5
% X2 x. J# `1 c: q                @.type:="blue";
4 e7 I! R3 j4 k' W: d+ m; T               PartRecord["Number",3]+=1. p% _7 ~9 Z4 F6 o- F
end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29/ \& D* w" g0 ~9 n
修改如下應該就沒問題  z, E. D  G+ D
) Y0 T1 E& C5 F$ B+ ]
var i:real

: L, X" c8 e  Z# e7 Q1 c谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11
# P: ]4 s* I; z2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...

0 F! x! Q9 t& D( i5 ~1 H/ M谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real
) L8 W4 n/ Z6 y% B4 D/ yi:=z_uniform(1,0,1)
$ l: o  U" F0 }: ]6 @4 K@.createattr("type","string")' R  w0 @# P5 h: [- h5 T% z
if i<0.2+ T; h' d! n, u+ S) k
        @.type:="red"6 N6 b8 Y. X  T
        PartRecord["Number",1]+=14 G- m8 K+ x6 h$ t: ?
elseif i<=0.5 and i>=0.2
, X1 d9 j( O! \# m1 X9 P, m, I" E        @.type:="green"  n* \5 P' ^5 v+ l
        PartRecord["Number",2]+=1. B7 q- g: h9 g. k
else
7 H) e$ t$ o3 M1 d  n        @.type:="blue"8 q' G0 D' Q' d& F
        PartRecord["Number",3]+=1" P) o. c- T' z1 @1 J% k3 E
end9 o) C) d# L$ A
8 q! O2 {8 U1 z+ E) d2 P
deleteMovables
) i. f! V' p& Y# YPartRecord.delete({2,1}..{2,3})
  i3 d. k. K; c! O. k这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-18 05:31 , Processed in 0.022455 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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