设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7195|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
2 q/ Y1 V8 d' `( f6 b9 ~, @6 C! M* L- @2 ]1 T4 g0 |
大家好,最近学习PlantSimulation,
! k% S5 b/ v3 q/ C: {: a# h: J7 V但是method方法运行时总是提示语法错误,
- W6 u- o, e9 Y3 R& g. s即使是示例程序也是如此,5 ], v7 i% g3 V( _
如果不添加method方法,仿真正常运行
5 Z' K$ `% F+ t0 }% K& W3 B想问问大神或者遇到类似问题的朋友,
/ {  c/ u$ |1 [: U& m, |有没有什么解决办法,大家一起交流进步!
* t* s6 P3 e% k0 ?: E, p2 \[补充1]我想可能是method没有编译,在v13中找不到编译选项
$ ^7 x+ M9 f% F$ t& Y" p[补充2]下面的代码运行到第一行就提示语法错误
0 p- z! X" ?* J( r7 pvar i:real! c2 `. X6 }- @4 ~
i:=z_uniform(1,0,1)- O" s9 S. x. E5 W
@.createattr("type","string"); z# Q- y. f1 \3 j
if i<0.2
- Z$ ^/ J/ a/ l$ M7 v1 h        @.type="red"6 G& J- [" D/ w! b0 {9 @$ E
        PartRecord["Number",1]+=1; s/ v  O& h. ]+ ?  n
elseif i~<=0.5 and i>~=0.2% ]+ G( `7 C7 c" x2 t  A9 n# ]
        @.type="green"
+ z6 ~) C0 G4 P: S        PartRecord["Number",2]+=1( n5 X& e# o% V  U9 _, e% c
elseif i>0.5
. F% T) c$ ]; I8 u, l                @.type="blue"
/ B) [4 `8 f) Y# i" B% M$ K- d                PartRecord["Number",3]+=1( r' d1 Y9 {4 @
end3 f& |! L: v9 n! |; h1 N

7 b( j+ `+ C6 G$ m- @- T7 {
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑 & Z. U: _/ T0 T5 G
7 n3 a, g: f2 z( C0 a& F: R
C:\Users\Administrator\Pictures\plantSimulation\question1.76 p; Z- Y/ g. g( \) e
C:\Users\Administrator\Pictures\plantSimulation\question1.89 O* W# g& \, \8 z" ]4 R* a
C:\Users\Administrator\Pictures\plantSimulation\question1.9+ k& v. l6 ?  k
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
4 W* I$ U. T# ?) d# i& @" K) f就不能把代码粘贴上来么
9 Y+ J4 B7 @$ X3 b0 }+ f; `3 K1 x
慢慢往后学,运行出一个带method的模型了,0 o# \2 u  ^3 H  N
前面的我有时间再搭一遍
, R' p6 o+ z4 w: Y/ t" ~/ \9 s之前因为代码太简单3 v: o- }' ?( G* Q- p
一直把关注点放在软件设置上
& }5 M' w3 |/ c, o% W用的13v  看了SimTalk2$ Y" S3 y! r& P" O
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑
! ~& d4 P0 ?  b( W) S1 S- h! E( e; K- I8 J& n" z
duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,: e2 M$ E7 N, y
前面的我有时间再搭一遍$ a8 `4 n9 Q* |6 N1 y& C
之前因为代码太简单' J& C$ u' O2 L0 D; z
一直把关注点放在软件设置上
. _( h, [. w9 i3 ^用的13v  看了SimTalk2, V# t# Z7 u, l; {& Z9 `( Q
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real
# M/ s# G& n/ n% P; h1 Xi:=z_uniform(1,0,1)7 R& X+ i+ u8 R# s$ ?4 g# ^$ p; O
@.createattr("type","string")
8 ?+ @- ?1 ~) N( Zif i<0.2+ T* O! j6 @/ t: ?
        @.type="red"" u" `3 U6 U6 o, t% O# @1 r/ f
        PartRecord["Number",1]+=1) ^5 _# k. o$ b  x8 P( j0 P
elseif i~<=0.5 and i>~=0.2
  [7 D3 D8 t6 v4 h5 p% Z& m        @.type="green"7 ?% v+ Q; S7 R
        PartRecord["Number",2]+=1
5 O, G- j; l) }1 v3 Melseif i>0.54 n& q8 ?+ n$ t/ R  m7 b5 Z6 Y
                @.type="blue"$ Q4 A( p! F0 A) W: T$ p
                PartRecord["Number",3]+=16 }! n4 D1 E: }% m
end2 t. J" b7 L' v7 ?! N' y
这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題$ }. G1 m3 |" b* v8 J8 ^2 I/ Z
  S3 o7 o4 n, L( V# w
var i:real
( b0 I, d& p! ei:=z_uniform(1,0,1)
2 x. i# Q3 g8 W@.createattr("type","string")
3 F5 }/ Z' Z. Q. i: P& ]) k1 }if i<0.2/ S2 N7 d& R7 `5 D
        @.type:="red";; o0 G# I& C: M; J" N9 z; Y
        PartRecord["Number",1]+=1
3 J; Q* F3 ?  j% @elseif i<=0.5 and i>=0.2" v; p4 _' t- b+ a% s3 E
        @.type:="green";$ x- O% N6 @  O
        PartRecord["Number",2]+=1
$ s8 S4 a1 v4 D* ~0 g" u" ielseif i>0.5
6 L0 D' m8 f1 B6 i& g1 F                @.type:="blue";3 u) ]2 d9 r9 `( c- \: }
               PartRecord["Number",3]+=1
$ a# g! H9 c8 q' }/ I! J! dend
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29& n( D' _$ h9 H, @
修改如下應該就沒問題  D  D- A7 l, Q
9 j7 ?! m: ~4 a. d5 w, X0 m9 Z
var i:real

* T( |! T7 l, y" l6 w. @0 C: n谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11
! w' L% P. I  A% ^' q: w2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...

2 t8 q2 y4 R. N# \8 b9 n5 b7 r谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real
! o% q( n- r4 F+ U3 W; Ui:=z_uniform(1,0,1)/ Q; Y! b; I0 k) D
@.createattr("type","string")  S; a6 J/ h5 u9 b1 I$ j
if i<0.2
# x2 ~/ L  l% [/ v        @.type:="red"& ?( k9 |8 L9 k7 l
        PartRecord["Number",1]+=1
/ d! _- U$ @0 |( m( p3 g; Belseif i<=0.5 and i>=0.2
0 V3 v8 V8 B9 k        @.type:="green"
- C5 ?3 D3 i& R  m9 t" n2 o1 B) B7 s        PartRecord["Number",2]+=1  ?$ |8 }5 T* D
else
, l2 w* N6 P! N        @.type:="blue"
' g/ h$ M* ~9 x5 J1 x3 u        PartRecord["Number",3]+=16 a6 y' }7 g* c1 T$ A, I4 Q
end
/ i& d! [6 ^' N4 V- U6 a5 L# g  A+ d* S2 [& F# n
deleteMovables
% z6 [" c4 W- bPartRecord.delete({2,1}..{2,3})
" O; K0 `: I, c8 W) ~+ p& r9 d这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-9 14:12 , Processed in 0.017342 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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