设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7096|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑 5 L) {. [+ @" @  Y, q/ d

# Y( C9 S) |! E, T  w大家好,最近学习PlantSimulation,5 b9 o. ?$ h! O/ d
但是method方法运行时总是提示语法错误,. N8 d+ V, q4 L8 F; M
即使是示例程序也是如此,
) y+ F5 }' j) M4 [% h如果不添加method方法,仿真正常运行
. \  t! p9 |& z) o. n! U7 L- R想问问大神或者遇到类似问题的朋友,  S: Q1 @; M, H6 `$ e" R5 o
有没有什么解决办法,大家一起交流进步!
. N7 w/ t4 K' }3 W0 z' K6 |[补充1]我想可能是method没有编译,在v13中找不到编译选项
4 s- z% Y+ p; m[补充2]下面的代码运行到第一行就提示语法错误4 H$ Z, v9 ]5 w& [, }
var i:real
; @7 Y2 H" A0 V% y8 v5 |5 Q0 ii:=z_uniform(1,0,1)* `% f& N) \8 S) |( v
@.createattr("type","string")
9 ]# R2 X" V  N8 U* Sif i<0.2% r5 f8 c! u4 n; ~) i
        @.type="red"
# J) K2 |4 X5 d* M        PartRecord["Number",1]+=1. ^$ ]: e" n- _0 I, j: w7 q$ s
elseif i~<=0.5 and i>~=0.2# @0 s. d0 |, ]% T, n9 Y0 W
        @.type="green"( Q: r: p, _6 A4 s
        PartRecord["Number",2]+=16 a6 b+ ^2 W9 x5 m5 r
elseif i>0.52 J7 l3 K1 C) ~* i2 W; F* c2 D
                @.type="blue"
2 M. `. r; M+ ?; I8 W  p                PartRecord["Number",3]+=1( i1 ?- O% |. a9 i" w
end" n* G) P* D( @/ N+ D' l4 o

% D: I: }' S/ N: o3 Y, k
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑 . j! _1 X' M" }

3 i( K  o9 P5 b: K' m  L' rC:\Users\Administrator\Pictures\plantSimulation\question1.7
# V9 T3 o! ~6 J8 hC:\Users\Administrator\Pictures\plantSimulation\question1.8
6 ^0 N# @' m5 X" T5 k. E0 L7 K9 s% x8 Y8 T. iC:\Users\Administrator\Pictures\plantSimulation\question1.9
# e; Q. @2 \5 Y1 l  E
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14
0 Q: r0 {! a# y! o3 \就不能把代码粘贴上来么

" ]8 k: u% H+ q- b! E$ L$ [, p$ z$ K慢慢往后学,运行出一个带method的模型了,+ S1 N  |3 R5 Y. D; E; r/ u
前面的我有时间再搭一遍
' g# @& }2 G/ K/ t) Y+ X: j之前因为代码太简单
2 S% o9 j: q2 j. G4 F# B6 Q: b一直把关注点放在软件设置上
# W% Z# N: T' y; A" `. }" E! E用的13v  看了SimTalk25 t5 W: o4 X" v* }
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑 ) z8 \( R) I% f" f+ y
  u  K$ }+ P# Y  @# p# Q
duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,
5 R/ \# i5 D4 p% w& Q' a前面的我有时间再搭一遍
" A# A( S% M% C0 T之前因为代码太简单
, w( p3 b- {! |9 N一直把关注点放在软件设置上1 r$ B  Q9 [3 S" f/ W8 k
用的13v  看了SimTalk2" S+ q! y$ u5 ]" I9 A
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real+ p2 T, h& U& S" I" a2 |
i:=z_uniform(1,0,1)% x' @6 j; {. Z
@.createattr("type","string")( P5 f$ `. z" m2 ?1 D8 {
if i<0.2( J8 X' u* X& H2 j# i3 Y
        @.type="red"# U3 {  f' E% }& |
        PartRecord["Number",1]+=19 l) v+ ^7 {  T9 ~1 m
elseif i~<=0.5 and i>~=0.26 ?% q) c& }# e+ c- w0 l
        @.type="green"
1 }0 Y, l/ P6 C, Q        PartRecord["Number",2]+=1  b  U: O7 {; ?: b
elseif i>0.58 D/ O1 H! y/ d, p" W1 E& J: b
                @.type="blue"( s# n* K4 h0 H# N, C* k" f6 F) H1 A
                PartRecord["Number",3]+=1- G" U; p2 C2 N7 C( ~5 k* C9 C
end4 w- h' e1 }0 l7 e9 K
这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
1 N- e; W$ V' S$ m% A) T' G
  |$ r) B7 Q. I' m2 ovar i:real
$ W; e8 F9 n1 j, }9 F( \i:=z_uniform(1,0,1)
7 X; `$ K$ ^5 r9 e) B; _@.createattr("type","string")' Z$ K9 ?3 y" [& V
if i<0.25 T" J3 |. [; ]( p# h
        @.type:="red";& k3 w. J" {# P. @7 |
        PartRecord["Number",1]+=1
9 c( a/ N* A/ Y' [' Belseif i<=0.5 and i>=0.22 W8 I2 m! P2 _/ e
        @.type:="green";
; d; H9 P' d3 o2 F        PartRecord["Number",2]+=1
: [$ j2 ^& f; D! a) [  }elseif i>0.5
* T; V- Q6 E. ]0 `, F" D2 f                @.type:="blue";
6 h7 L( l9 s, B3 |1 w2 T  ?! [               PartRecord["Number",3]+=1, [& N, w+ K0 u5 d) n; Q
end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29
% Y1 S: i- H7 O7 ^: h修改如下應該就沒問題& b7 k& f. W8 n" _

& ?, s9 |9 |0 r; c: \4 g5 ]var i:real

* w4 r9 Z' V+ p' r; s4 ~+ r谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:111 [: u* |8 F$ b  H) n
2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...

+ H2 l4 r* l) T谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real; p7 C0 Z  q9 u) u8 Z# l
i:=z_uniform(1,0,1)+ Q; E- R! }8 `+ h, v" A: C
@.createattr("type","string")0 T0 D' i* h  T2 j& i1 e
if i<0.22 M" a8 W8 k( g" G
        @.type:="red"  e: P, s. ^8 Z  ^7 U2 x6 \
        PartRecord["Number",1]+=1. D4 {- @3 d9 H
elseif i<=0.5 and i>=0.2* X5 R; Y+ |4 I  p
        @.type:="green"
! N( D; U- D7 e        PartRecord["Number",2]+=1
. l# b* E) ?4 l2 `else , U* E! s" A+ @& m$ D' A6 ?
        @.type:="blue"# D  _0 t- m6 U* J9 o! T- Z# V& s+ u
        PartRecord["Number",3]+=1
) g1 J; N& X  j: |end
  E- U2 Y2 ?/ \  P+ _
0 R. h/ V( w: w/ [, wdeleteMovables
9 K$ A& v$ h  z- L, |# nPartRecord.delete({2,1}..{2,3})
2 Y- B4 o0 W: ~3 L0 D; `这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-20 10:40 , Processed in 0.019952 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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