设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 723|回复: 12

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑 * n% a9 A  d! A6 G5 h3 k. L
: L+ v8 c$ U; M1 J$ H
大家好,最近学习PlantSimulation,; e, M8 c+ y6 \8 W, R4 H3 |
但是method方法运行时总是提示语法错误,
; e" N# |1 n% E% V* m  M, y即使是示例程序也是如此,
3 B- y0 j( }7 B- j如果不添加method方法,仿真正常运行
+ N: f8 y$ I" d6 ]1 g# Y( H想问问大神或者遇到类似问题的朋友,
/ E4 j8 u+ _' r有没有什么解决办法,大家一起交流进步!3 C8 Z- F0 @+ @, O/ Z- v
[补充1]我想可能是method没有编译,在v13中找不到编译选项
2 ^9 a3 |2 U. m' n0 H: N) n. M[补充2]下面的代码运行到第一行就提示语法错误5 j+ p8 L$ f3 K$ v8 T% C
var i:real
$ Z8 ]. M0 b3 S9 {# vi:=z_uniform(1,0,1)# z5 i. r1 Z) q7 ~" y# |
@.createattr("type","string")
+ C9 c# w$ s, A3 R, cif i<0.2# ^: G& x0 `. R% v* Z
        @.type="red"' r4 z. v7 L4 E1 g3 h: e0 N# `
        PartRecord["Number",1]+=1
/ p. G# b7 i3 @3 [* `7 y, ^elseif i~<=0.5 and i>~=0.2& X& l( O( X& A  R, K* X( _
        @.type="green"
- a) v/ j2 v5 U- S8 p, F        PartRecord["Number",2]+=15 T# W1 ~: I* L" O7 J8 c# n
elseif i>0.5
  o0 k0 n% k7 Z' @' d9 u                @.type="blue"
4 ~8 S! J5 z' o: e8 \9 A                PartRecord["Number",3]+=1
; {0 P" `' _/ p9 `7 Eend2 a* v" L9 i; V# X& c

% u, A, G9 {3 M! G: b- O7 h; D, V
发表于 2017-4-26 22:12:48 | 显示全部楼层
建议可以把问题截图,描述清楚,这样别人才能帮到你。
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑
5 L$ U' B3 L- K6 u* ^4 S6 t) u" k2 V- V4 H; ]3 Z2 _
C:\Users\Administrator\Pictures\plantSimulation\question1.7
" t/ r# P4 Z; R+ C6 TC:\Users\Administrator\Pictures\plantSimulation\question1.8
! c' ^' O; p& F# x9 P) l2 u$ |C:\Users\Administrator\Pictures\plantSimulation\question1.9
' o9 R% u5 ~; O
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14! }5 K: C$ W, e9 E/ H% q8 {
就不能把代码粘贴上来么
5 w! P: S4 p9 Z; H2 K, [
慢慢往后学,运行出一个带method的模型了,
( a) h! x6 R+ m3 k" Z  x+ ~前面的我有时间再搭一遍
1 F9 H! X0 E& L; p2 m% w' m之前因为代码太简单
% s3 v1 F4 i& X( L一直把关注点放在软件设置上
: _( W+ d# S! c# Y用的13v  看了SimTalk2
3 p  q8 ~. R, @之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑 * J. z2 b8 D5 h1 v  }0 {4 T; @
' z5 K, T7 Y/ p4 J. |* u
duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,
/ r' G7 ~$ J3 P" p5 o+ @5 [2 y前面的我有时间再搭一遍. q" @$ G5 g6 J0 n5 Y; C
之前因为代码太简单0 O4 V; `% B6 L$ Q$ O2 S
一直把关注点放在软件设置上
1 m3 Z. G- L/ x: ^; ~* U: P) V用的13v  看了SimTalk2
% p8 i6 q! w4 ^+ m' i' n之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real
3 D' A6 z6 G( r7 B' Ai:=z_uniform(1,0,1)
/ q; |) ]( J* [& p/ l; k@.createattr("type","string")
$ B+ z6 B' l3 \* F2 d8 Bif i<0.2
( m2 L* _" p9 r. V        @.type="red"
' G: a, V) C( L) `. V  @' V1 ~) a1 F        PartRecord["Number",1]+=11 `# @8 p0 Z4 x0 f' g
elseif i~<=0.5 and i>~=0.2# c' `) m' Z* `; n2 g
        @.type="green"/ U9 i0 c, W$ e; U# [0 a
        PartRecord["Number",2]+=19 z. {7 Y0 g. p! E3 Q+ ^  e/ E, j7 o
elseif i>0.5! x* x1 [, ~6 D7 l
                @.type="blue"$ ~+ p& a3 B$ s* n) V7 a: r
                PartRecord["Number",3]+=1
3 d/ w/ Q$ O5 W1 f5 z/ J! Zend/ y4 ]& Y; ]; ^$ e7 V9 Q
这个运行到第一行就提示语法错误
发表于 2017-4-28 01:11:50 | 显示全部楼层
艳玲 发表于 2017-4-27 16:47
, Y4 Y4 ^( n4 u8 H* r/ gvar i:real# C' f( q2 M7 k0 P6 @
i:=z_uniform(1,0,1)4 I: ]7 [8 |- C3 b4 r  W
@.createattr("type","string")
& @6 y" R! w' V6 D
2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋值,关系判断i~<=0.5,应该是i<~=0.5。* H( |6 s% T, S9 D2 `) H' r, j
: c1 P& p8 A! S9 d$ S! ^% o
一点建议,如果你之前学的老版本,那么就按照老版本语法编码,完成之后自动转换2.0,这样会好一些,慢慢适应。
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
- |; O7 j6 Z- U- g1 A% o; u% Q4 Y1 ]& {3 ?: a$ W
var i:real4 m+ P. i+ z; o$ I2 q6 x
i:=z_uniform(1,0,1)" A1 X8 b- u3 r% u5 {
@.createattr("type","string")
; b# b& }& p& W) q5 B) zif i<0.2
. j+ \# p0 e+ L' D        @.type:="red";# ~5 I6 V4 ~" j1 i# x: ^$ b
        PartRecord["Number",1]+=1
" S) i8 v. J; L. j, Lelseif i<=0.5 and i>=0.2! c5 E4 Z4 M$ N  y) b- I0 u* G
        @.type:="green";' ]/ J- ^2 n. I2 w# M
        PartRecord["Number",2]+=1: p# b2 e( s+ N& m
elseif i>0.5
% z7 B, _; P: B* K% k* G                @.type:="blue";
+ _. Y; v$ }6 [& o: H% o) J               PartRecord["Number",3]+=1
% m! }" [* \- l1 Z) Wend
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29' }: x; t- }. t3 P! N2 }1 ]
修改如下應該就沒問題. N6 e4 Y& }. S9 W
, Y- ?9 s" H% D, V8 q1 Y+ t1 [
var i:real
& i" a, q1 w% l; F( _* l" u6 t
谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11
( a" [. P9 z5 b5 {6 H2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...
6 I* G" u, b, y9 ^3 C0 ]4 ^0 L
谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real8 _( a* K" y9 h' X3 s
i:=z_uniform(1,0,1)7 k0 t3 Q% o( k  c  d5 r
@.createattr("type","string")
/ ]" D. s% e. mif i<0.2
* Z( o" @- Y4 s4 K* Q        @.type:="red"5 H2 ?% }) T9 `
        PartRecord["Number",1]+=1
  h5 t( W( |1 z+ e5 y3 d) B3 M* Nelseif i<=0.5 and i>=0.21 C* X1 m5 d6 h% _
        @.type:="green"9 ]' y- U2 F2 F  T3 L( T* V- h, G
        PartRecord["Number",2]+=1
; ^; ^2 {' P+ _5 L/ Aelse
. j" F  y' O& c  e        @.type:="blue"
+ m9 ?- w2 P' c$ j, `4 k5 A$ J        PartRecord["Number",3]+=1* ^; f5 O8 a: \' e( f
end
- K( E2 \9 d  ?: k, y) y/ @, A4 t, p7 }
deleteMovables* [- j; y9 E3 t0 T# ~( L
PartRecord.delete({2,1}..{2,3})
' C* D( ~. j. E# A4 P  s" D7 V* C* N这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2018-4-26 21:34 , Processed in 0.033295 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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