设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3695|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
& a; i7 y" J$ W! M* K$ V7 F+ F! k+ [* }2 _" u% R
大家好,最近学习PlantSimulation,& C, h& V$ M* s6 ?) E+ q, y' V2 a
但是method方法运行时总是提示语法错误,
0 g# o3 Z5 z6 X) P$ [; p即使是示例程序也是如此,
' P6 z3 V7 N6 X4 ]9 x如果不添加method方法,仿真正常运行
9 a3 k" ~4 A2 O- }7 o: Z想问问大神或者遇到类似问题的朋友,; [0 l# l& n, `, U8 _) ^4 k/ C
有没有什么解决办法,大家一起交流进步!, g. `3 V4 A8 b* @/ s7 u3 l
[补充1]我想可能是method没有编译,在v13中找不到编译选项
, d. a. O9 Z$ ^, I[补充2]下面的代码运行到第一行就提示语法错误
5 B8 X/ e! S# b6 O3 Y9 |var i:real  d8 \' ^- _+ n5 H3 K, @3 E' x
i:=z_uniform(1,0,1)
  ^8 U: f$ y' D; h@.createattr("type","string")# m) Y0 y9 r2 e" k8 A# I
if i<0.2
. j- p* E8 [2 Z        @.type="red"& a+ n# G2 T; U( [+ d$ a1 R
        PartRecord["Number",1]+=1
' e$ d. @4 t1 N$ K2 Melseif i~<=0.5 and i>~=0.2' T' X- q2 ]8 J, u
        @.type="green"
9 q( ~3 {& A9 t) ~/ o, G        PartRecord["Number",2]+=1
7 z1 c4 q! h3 R, S) t  Welseif i>0.5
5 A9 N$ K9 n' f! T                @.type="blue"3 |$ D" O7 c" A5 P& w6 [7 u
                PartRecord["Number",3]+=1
! i) J3 M9 k7 n/ z5 d7 E; J* K, }; ]end
% a, P9 @- _5 P$ @0 E1 s1 u- z8 Z! p# O, f) S: _! S' H" L
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑 ' W& W8 ^% L1 T# A
: M" M6 T( ~: c2 _) T
C:\Users\Administrator\Pictures\plantSimulation\question1.7& R3 z5 c# P9 r& y9 L5 B4 Y& B) R: v
C:\Users\Administrator\Pictures\plantSimulation\question1.8
  ?$ S% Q' Z% J  U$ N% r* a4 Y9 ?0 fC:\Users\Administrator\Pictures\plantSimulation\question1.9
, |. s4 x9 G: R( J2 `/ p
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14  E8 b$ X+ `3 Q$ Q! O5 f3 j
就不能把代码粘贴上来么

" n+ I; Z0 `' X1 E慢慢往后学,运行出一个带method的模型了,# H6 E- [4 f5 b  V; G
前面的我有时间再搭一遍
$ z) f) ~* V; A2 x$ _之前因为代码太简单
3 s2 q/ i$ z7 S# U一直把关注点放在软件设置上
! K+ ]3 D% J/ ^/ Z- R, g# F2 f用的13v  看了SimTalk2+ j+ ~, t( ]6 f5 C6 j
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑
0 i: O6 e- e  A/ v/ F$ `" C0 v- Q" e( v3 Q6 ?4 r* H
duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,
. I. s1 Y( p6 r( \2 L8 l前面的我有时间再搭一遍0 L8 O5 F  c2 Z" k8 u% S% Q9 r/ J
之前因为代码太简单9 _2 a- t$ C& ?% b
一直把关注点放在软件设置上
2 a& h8 O' E4 e用的13v  看了SimTalk2
5 q9 t. F; s; c" i4 i之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real; C. v0 ]& i  v" ]/ h8 _
i:=z_uniform(1,0,1): N. T: L- w+ w/ ^3 C
@.createattr("type","string")
2 {6 Q5 l6 n' P5 ], k* Qif i<0.2
+ e* j, I2 Z2 M+ k" v        @.type="red"* O/ Y8 X2 Z6 w9 I
        PartRecord["Number",1]+=1
( c# I/ W9 h/ Eelseif i~<=0.5 and i>~=0.2
* h1 i/ m8 S; r0 c        @.type="green"2 e/ K' d/ A0 E
        PartRecord["Number",2]+=1
7 p9 e8 `4 O  \elseif i>0.5
, j+ {1 t% t$ P+ s" s$ B/ e                @.type="blue"
6 I# ?$ |7 C, V$ {4 [                PartRecord["Number",3]+=1/ i  B6 W& J, O0 k! X5 b
end
& R( U; @+ x% Y* f4 O, z这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題0 F  v! ?: C, u9 C1 I8 w

- }. t! G& |& R- S) j( Y( svar i:real
3 U0 p+ S9 n! xi:=z_uniform(1,0,1)4 p1 r9 j- \- _9 \8 X8 Z
@.createattr("type","string")  f; S. F$ e. \9 g& X
if i<0.2' q4 A; M9 E; @3 l
        @.type:="red";7 g9 o' v( @  h, y  Y% J' u
        PartRecord["Number",1]+=1
& u, t/ T! E+ oelseif i<=0.5 and i>=0.2
  X. N% m$ K$ S        @.type:="green";% e" i# B3 ~) ]% V# P
        PartRecord["Number",2]+=1
+ f5 f4 I/ ?" kelseif i>0.5
7 J( o/ M# N* W* c( |9 g! Z3 D                @.type:="blue";2 `3 S* B' I/ |$ P6 V9 R
               PartRecord["Number",3]+=1
: G* c$ L' z1 w, M0 D2 Pend
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29+ g1 v$ }1 z- g/ n
修改如下應該就沒問題
. o6 V& O9 \8 m1 j! Y8 m: [+ o2 P( g
var i:real

- i3 ^8 v5 V" f* s6 u谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:110 |3 r8 u1 Q  J* i5 n2 R
2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...

& X; y: I( J+ m7 H# S谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real- P2 l; a- Z! e/ F9 \2 o! N( T
i:=z_uniform(1,0,1)
1 Y* n& H6 q9 \2 K" F@.createattr("type","string")
  Q  C. U5 F3 yif i<0.2( s% z2 U' L* Q9 K
        @.type:="red": X7 s; s  P* [9 w2 H
        PartRecord["Number",1]+=1
, a! J+ o9 ]0 c+ selseif i<=0.5 and i>=0.2
. |4 `( d0 |* s8 {        @.type:="green"
' l; t1 K, |4 [6 W9 d        PartRecord["Number",2]+=1( _$ M, @" Y: @1 H) f: ]* D- f: {
else $ N5 L2 e8 z9 e' {$ i! n0 m6 }
        @.type:="blue"
4 E) L; {9 Y: ~, T& u        PartRecord["Number",3]+=1
. O4 j3 f2 F% d5 U" nend
9 |! c9 `" H6 I% M! F8 ~& d' E& K- `* w* i& ?
deleteMovables
" g5 W3 g3 [8 b# _- x- [: k2 iPartRecord.delete({2,1}..{2,3})
* g8 L' b' a/ R- X7 e' D这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-6-11 02:19 , Processed in 0.016733 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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