设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6590|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
, l0 v- T  u6 K* D4 x0 J( R/ N$ e; y4 b* i' c7 A% A
大家好,最近学习PlantSimulation,/ M5 A+ \/ Y. F( B* M- v
但是method方法运行时总是提示语法错误,; L, h$ n/ t. i8 f  R% ^" I
即使是示例程序也是如此," ^. s/ `/ g9 e! n& J- B
如果不添加method方法,仿真正常运行( R3 C- }  y* v4 _/ I4 K
想问问大神或者遇到类似问题的朋友,  k0 q/ y0 H4 `4 L# Q' n6 e
有没有什么解决办法,大家一起交流进步!( I( Z( [  X6 m4 b9 c0 w
[补充1]我想可能是method没有编译,在v13中找不到编译选项3 d- D" P: t% b" {
[补充2]下面的代码运行到第一行就提示语法错误7 q$ x5 k# d7 p" P" y3 L' m+ r
var i:real: K* z7 u0 h! T% Q
i:=z_uniform(1,0,1)3 r5 M' E, o& }1 x3 `& Q
@.createattr("type","string")) q! E4 K$ _$ T$ ?
if i<0.2& \& F/ }7 @! G3 U1 r: k
        @.type="red"
' y& p+ s' J* G# j; S, z        PartRecord["Number",1]+=1
; f; b0 Z. p$ _2 N- ?elseif i~<=0.5 and i>~=0.2, N# r' P" |# b/ N- D% I( U
        @.type="green"
' z9 C% {& v% `% m        PartRecord["Number",2]+=1# E6 I  f3 [5 X" ~
elseif i>0.5. l4 u8 P+ E* Z* z7 w
                @.type="blue"
2 G6 z% U0 `. X. o6 T                PartRecord["Number",3]+=1
1 x  B4 \# q1 P3 b; @; K2 n7 Q) ~/ vend
0 ^0 t; v- M  o$ F
; y- \+ I" f( S' _0 \/ I& z
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑
7 H' C* I2 k; l' D: |" _, n# z4 g% i( }, |( Y% e  I; x
C:\Users\Administrator\Pictures\plantSimulation\question1.7: a" c+ A0 G) ]
C:\Users\Administrator\Pictures\plantSimulation\question1.83 B3 C, m, G0 D* O# Z! \, q5 @$ @' T5 |
C:\Users\Administrator\Pictures\plantSimulation\question1.93 V. t) D& [! D# X5 F5 n0 B) h
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
# E% _, p3 C# I+ s8 E+ y就不能把代码粘贴上来么

- g5 j. Z8 n; Y0 O慢慢往后学,运行出一个带method的模型了,! p! d7 ~3 @: b3 x0 q
前面的我有时间再搭一遍
1 U: Y( M" K5 U+ Y5 U之前因为代码太简单
* R5 e1 V! Q7 v6 I一直把关注点放在软件设置上" k. B3 c' U& W8 a% P$ N& C6 c, h/ S
用的13v  看了SimTalk2. D6 T- v' ]1 F! @3 d
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑 ; L1 F/ _4 B) O8 ]( a+ _, r' t1 R% ~

. l! K3 P6 L3 Uduplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,
: U8 s! y1 ^- i/ x: c前面的我有时间再搭一遍
" K9 q/ f" H2 i之前因为代码太简单
2 D, K0 n% ?  E, d一直把关注点放在软件设置上
8 \& `7 T6 E' ?+ D5 _$ P' O用的13v  看了SimTalk2" [( C% g; y. c! U
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real
0 ^0 ?$ X$ o& k4 d3 ^- Y% Yi:=z_uniform(1,0,1)
. F  T4 {& e5 V. P6 B( r9 `@.createattr("type","string"). Y5 ?1 L+ O/ R" j- ^% P$ y( U0 W5 P
if i<0.2' [! b: V6 K8 O& e" |. Q
        @.type="red"
, w) r* r" W% r, J% B        PartRecord["Number",1]+=1
9 W& }" B# L& G# w. Helseif i~<=0.5 and i>~=0.2
/ E; |( C0 H) J  C        @.type="green"
: X* l  K( {1 k/ t- d        PartRecord["Number",2]+=19 V1 W4 R2 {3 o$ G
elseif i>0.5
: g8 Q' d9 I9 d0 t                @.type="blue". A3 a2 r: G$ J. G$ ^/ s: q
                PartRecord["Number",3]+=1- Y8 K# A- |8 \/ i
end4 V& Y. p; b' C4 f" Q
这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
* P' M0 E) }. @1 ]$ A( [
! J9 L; |3 n' W  V4 fvar i:real
6 C( ^  c$ _3 r+ Pi:=z_uniform(1,0,1)
' `" Q+ D5 d8 D: M( C@.createattr("type","string")+ k- t: \( m- l' @0 \
if i<0.2
, \) R: I5 P$ ?% l& c* Y& k* Y3 w        @.type:="red";
3 O2 ^7 F( |* P9 L        PartRecord["Number",1]+=1: X/ X4 t, N) w3 q0 z7 o1 v
elseif i<=0.5 and i>=0.2" S4 S8 A  }, d
        @.type:="green";
  K+ }- l$ _* x  H        PartRecord["Number",2]+=1
" g; ]0 F4 e" n0 w- _/ A! gelseif i>0.5) v7 c1 c; R3 ~2 U1 h6 x" J" `5 e
                @.type:="blue";  t6 Z- h% B. Q9 S% i
               PartRecord["Number",3]+=1
) X6 B% _7 y& ]* ^% oend
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29
% Q, R0 p- l/ N" |7 y3 U修改如下應該就沒問題
; A! n" d- o; f& u: E5 D% j1 M* \, Q$ a( ^  l
var i:real
% |# `5 p# P$ B/ W7 Z
谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11  A5 R4 P* x0 w) \5 z1 c( y
2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...

) Q" t' @; M/ |9 f% X谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real& \, l) {1 U- F6 B( s! x' H  g: w
i:=z_uniform(1,0,1)
) X! V+ ^; w+ p! l@.createattr("type","string")0 o( _# u( A: S7 C9 M( `
if i<0.2
$ x6 z- S4 a' ]# K        @.type:="red"
4 h; _/ B6 R* j- R& U6 m        PartRecord["Number",1]+=1
& p' y$ _& S7 _+ t: nelseif i<=0.5 and i>=0.2
1 g: j; }1 o$ f* T, M        @.type:="green"
, x; j, Y- g; Q: T' Q        PartRecord["Number",2]+=19 j% R, ^- [! R* C' ?
else
9 r5 W5 i, F' U$ Z/ ?        @.type:="blue"
5 ~, T6 O7 \5 N2 r; N        PartRecord["Number",3]+=1
7 K" L3 n# t0 I( kend8 j. n' ]- s# L2 |
) O# D1 j- y# M8 A# {
deleteMovables
: k& c4 `8 i+ tPartRecord.delete({2,1}..{2,3})0 B' v- e0 J2 u+ G# V& v# R
这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-4 04:56 , Processed in 0.018284 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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