设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3682|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑 1 g4 f2 i% j2 d+ `: Z1 E

& T* G: Q" L+ i/ _) }9 Q* @7 T大家好,最近学习PlantSimulation,
4 s% m  ^3 _1 v  a, K) ^- L3 X但是method方法运行时总是提示语法错误,
( u7 ~/ x9 \; k2 i3 o即使是示例程序也是如此,
/ ?- {- O8 S" d+ B  Z如果不添加method方法,仿真正常运行4 _9 O3 Q7 |+ _2 w/ x
想问问大神或者遇到类似问题的朋友,
( X2 y& [* w% A3 W3 B0 R% e有没有什么解决办法,大家一起交流进步!& H6 ^( O: n% I% E
[补充1]我想可能是method没有编译,在v13中找不到编译选项. h, X6 ^# T/ v. W! ~4 h
[补充2]下面的代码运行到第一行就提示语法错误+ p2 A+ U9 F$ R$ o
var i:real! E# h$ n9 @: q9 ]
i:=z_uniform(1,0,1)9 u0 \+ I; ?) K8 }6 R
@.createattr("type","string"): S: U! ?8 F& o- Z6 Q" F7 I9 t7 ]8 y
if i<0.2
# V3 @" A7 e0 S$ B3 [7 V9 d, y2 E        @.type="red"
2 ~# R0 p& N* X' M( }        PartRecord["Number",1]+=19 {. ^: R8 @2 g4 N5 H6 L5 `
elseif i~<=0.5 and i>~=0.2
& F/ t) ?! y  v$ j        @.type="green"( a5 E0 r* k) d) G9 _: `
        PartRecord["Number",2]+=1- {5 Q6 [5 k. Q: n
elseif i>0.5
8 d0 M: n2 T7 X1 U1 J                @.type="blue"7 i5 `% R7 Z' n  T# L- Y) o
                PartRecord["Number",3]+=1$ h( x, _3 W9 k% Q; q; g$ z$ @1 ]
end
4 v- A( Y9 T, [
2 U+ i$ L. b# N% l
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑 : `. ?2 l6 c+ e
3 w9 O9 L/ K* A* ^% V: ^! z* V$ l6 G' D
C:\Users\Administrator\Pictures\plantSimulation\question1.7
4 ?4 Z9 Q$ h* E; ~; D# Q# m# AC:\Users\Administrator\Pictures\plantSimulation\question1.8
) {. t) P" }' A) gC:\Users\Administrator\Pictures\plantSimulation\question1.9
4 R7 b( G6 V: \- f/ h; o4 ^
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
5 |- S8 b5 U* f. q5 `& ~  ]就不能把代码粘贴上来么

& q# c( E$ r1 Y+ r: f$ {+ x2 D慢慢往后学,运行出一个带method的模型了,
* d- u) d, a, s* F前面的我有时间再搭一遍; v3 L5 k7 C: {6 G; h4 D
之前因为代码太简单
. J, Q: k) Z! _# K4 I7 w0 S一直把关注点放在软件设置上7 J5 L4 o2 `7 R) ^5 z  M: Z
用的13v  看了SimTalk28 V$ u; m+ s! S: s/ f* Z
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑 + H/ A: r! z# u" q

8 E% O: e  \/ b6 m( kduplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,: l3 {' @6 `! u* \" Y
前面的我有时间再搭一遍" x# [9 W" \1 V. v
之前因为代码太简单
* ]& U" P7 ^' E5 h! Z$ Z* U一直把关注点放在软件设置上
" y' ~% ~% u' v3 X* _( I; c用的13v  看了SimTalk2
' x7 m( b6 }" n" d: K( m之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real
  o+ l  p; Q6 V( ^i:=z_uniform(1,0,1); `) B1 q/ A  c7 e; A
@.createattr("type","string")
7 z- C0 t& V. F0 t2 y, w  e$ Wif i<0.24 T5 C7 A' M( R% Z9 d
        @.type="red"& b" J% ?2 K! y0 I5 [, _
        PartRecord["Number",1]+=1
) E$ h% B7 o* t% Eelseif i~<=0.5 and i>~=0.2+ W0 r3 J  U+ @) b, C+ i" D
        @.type="green"
/ d( `7 L2 I+ G" ^$ J+ I6 L' g        PartRecord["Number",2]+=18 y: O2 Q! T' y" h. x
elseif i>0.5" D4 U# b2 V& O' H: ~
                @.type="blue"
, |! Z: }7 g$ N5 K                PartRecord["Number",3]+=1
7 Y6 Q6 F! h) j# @% |9 Dend
6 ?) r8 Z' K  g; m这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
/ a- W' g  I9 T  k# v0 m# N0 g5 {) B$ @( Q, z$ D. }0 D
var i:real6 [5 @8 [% ?4 Z' g* V; }
i:=z_uniform(1,0,1)
9 p4 e5 J; u: G@.createattr("type","string")" E( i" l; T3 E- b
if i<0.2
! m( S6 L* P3 L/ @3 ^7 M        @.type:="red";7 R+ H  X) H# X0 x$ V( M
        PartRecord["Number",1]+=1
& o5 R% k& ^! L" j7 jelseif i<=0.5 and i>=0.2$ a: g' i6 T* `/ O" `9 f9 ?
        @.type:="green";
' k! k7 t8 U* k( R% ^, Q4 _" T* O        PartRecord["Number",2]+=1
; w8 z  r2 r6 ]! I2 I! Melseif i>0.51 B  G4 l5 c* S5 r+ c& x3 o
                @.type:="blue";
0 U1 R* W: F# Q               PartRecord["Number",3]+=11 S* G; V5 P3 J1 h4 V  t$ Q
end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29/ L8 l( \8 I8 i0 O
修改如下應該就沒問題
' n: {; R0 C; N* A; \( g. T  p4 p- z
var i:real
; j( }  _$ i* i( [" k
谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11
; M4 Z( e( G7 n8 U4 B/ B; P2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...
' m( E8 @0 N8 Y( d
谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real3 B$ `8 U9 {8 @0 l
i:=z_uniform(1,0,1)0 \' d# g: I, q: }  `7 A2 B, t
@.createattr("type","string")$ y. y6 S& I8 g5 S; B
if i<0.2" O( T1 b) e) N/ k7 U+ p, {
        @.type:="red". _/ n; ]5 W/ s$ s' \
        PartRecord["Number",1]+=1
& G  j+ U3 C3 D- j( i6 s9 Telseif i<=0.5 and i>=0.2
) A7 C0 R9 H. M        @.type:="green"
5 C1 ?( E. N% n2 A        PartRecord["Number",2]+=11 O/ D8 P- v* L9 [1 M
else
; V  T( a9 I% z/ Z7 f        @.type:="blue"
6 Y4 V9 q8 k- _* K. t" w& ~        PartRecord["Number",3]+=1
& _+ j. \' I; S  \end! S/ y( O! V9 p- @6 I! c0 O
& M$ A- c2 |; }2 S
deleteMovables
9 s' e6 D3 v9 N% e/ j, ?# YPartRecord.delete({2,1}..{2,3})
$ d0 K; E, M; j这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-26 17:14 , Processed in 0.014051 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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