设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6058|回复: 10

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

    [复制链接]
发表于 2017-4-26 18:00:11 | 显示全部楼层 |阅读模式
本帖最后由 艳玲 于 2017-4-27 16:49 编辑
/ x- i! b/ h. U' G) Y$ H1 w
, E& ?7 d; P" t' N$ y& Z6 |大家好,最近学习PlantSimulation,! N8 n9 C: A0 x/ s: N5 T& O
但是method方法运行时总是提示语法错误,# |9 d/ r5 w8 m( q3 t
即使是示例程序也是如此,  }! E! C9 q# W5 i* R0 z
如果不添加method方法,仿真正常运行  I( l: f" h& T6 n% ^6 F
想问问大神或者遇到类似问题的朋友,( I3 P; W1 P2 E+ |/ f/ }
有没有什么解决办法,大家一起交流进步!
( b, Q% v. z# t: ?0 E[补充1]我想可能是method没有编译,在v13中找不到编译选项1 N; U: H$ D2 U& e4 _! K
[补充2]下面的代码运行到第一行就提示语法错误
+ s, C- Q  [* W' }+ O5 r  ~9 O; nvar i:real
, u+ Y# z, T7 I- d! u9 _9 `" bi:=z_uniform(1,0,1)4 j1 I  F# ^# _* o& Q
@.createattr("type","string")
% E6 f5 ]4 A, c) S# {if i<0.2
# @, X* x3 L9 v. O        @.type="red"
$ J/ I! f9 F4 ~$ V$ @) J+ B        PartRecord["Number",1]+=1
( b7 ~& Z4 u9 E9 A, ?elseif i~<=0.5 and i>~=0.2
( O( H5 p" l' X: L7 m        @.type="green"
" c; A4 i) }( [/ m4 u* o3 {7 q        PartRecord["Number",2]+=10 A; @% s) j: G# B$ L
elseif i>0.5
# K/ h, P' a" `! `. V0 o                @.type="blue"
9 t2 A7 F$ z& @, j                PartRecord["Number",3]+=17 G/ L! D! H5 x7 @( S) }5 J
end4 x$ r8 p6 x: d6 ^3 ?8 v1 O

7 D0 j3 r( n( b0 m! s
 楼主| 发表于 2017-4-26 22:42:01 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 11:06 编辑 0 \+ U+ K* s+ i' l  K0 d: c2 i
1 Y1 E' V3 u4 _1 u( g6 x- w( e) ~
C:\Users\Administrator\Pictures\plantSimulation\question1.73 n5 k9 k; f# g( P% k
C:\Users\Administrator\Pictures\plantSimulation\question1.8
, t/ [. u5 u0 m' U, }2 VC:\Users\Administrator\Pictures\plantSimulation\question1.93 x: s/ f4 _# w; C& {2 T
 楼主| 发表于 2017-4-27 15:28:51 | 显示全部楼层
bdsy1331 发表于 2017-4-27 15:14' `- G# L" o9 a& n, l1 J
就不能把代码粘贴上来么
" \4 y& n4 k8 r' T7 Z
慢慢往后学,运行出一个带method的模型了," N: G( u* R) B% _! ^- K9 a2 e
前面的我有时间再搭一遍" H  S* C+ u' V' W5 K  Y
之前因为代码太简单& ?, v% l' w. \# A+ W$ v( C
一直把关注点放在软件设置上
2 H2 i: F5 H$ c5 \3 `9 i- W用的13v  看了SimTalk25 T# Z8 h" G+ W+ `) ^6 r, ]
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 15:28:59 | 显示全部楼层
本帖最后由 艳玲 于 2017-4-27 16:50 编辑
( N5 Q( p3 g9 I/ }
5 F! @1 I( B. _4 g* ~5 ~+ W2 `duplicated
 楼主| 发表于 2017-4-27 15:29:21 | 显示全部楼层
慢慢往后学,运行出一个带method的模型了,
! [" {6 P* N' n" z7 g$ o  ^+ f前面的我有时间再搭一遍
  n/ u: M% V$ S6 Y; S, F( D6 q之前因为代码太简单' e- H* Z: I' ^
一直把关注点放在软件设置上
1 m& I5 R2 ?+ s  [- J0 z5 m6 a用的13v  看了SimTalk24 r! w" l6 w% F; h7 ^2 |8 S8 P/ P
之前一直看的8v的教材
 楼主| 发表于 2017-4-27 16:47:46 | 显示全部楼层
var i:real6 m  K) f9 p5 _9 Q5 l/ K
i:=z_uniform(1,0,1)
  R+ _2 m  u) Z+ |@.createattr("type","string")1 A! Q  F) N4 b: |$ @/ T6 i
if i<0.2
5 A  W; m1 A, i* C3 F3 q        @.type="red"/ F7 d7 Z: u1 B. R3 v* Z. [
        PartRecord["Number",1]+=1  u# r- K4 h. ~4 E" a
elseif i~<=0.5 and i>~=0.2
2 H6 B* ]1 J; C8 Z4 m+ H        @.type="green"
  |/ j+ j. C* e  Y+ T        PartRecord["Number",2]+=1; q8 r/ N" h- r0 g, ~
elseif i>0.56 z3 j4 ?+ X) P0 q7 C2 f9 X
                @.type="blue"
% j# d! l# _5 b                PartRecord["Number",3]+=16 c$ z! T9 M/ S2 J$ y% r
end
* }# C+ l, Q2 U$ Q这个运行到第一行就提示语法错误
发表于 2017-4-28 09:29:17 | 显示全部楼层
修改如下應該就沒問題
3 b( V9 x8 [( D/ P& k1 M: k
0 h) E& C. |, ^var i:real2 L8 E# R: g( k3 [: i/ v
i:=z_uniform(1,0,1)
( [( G' q/ y0 v, _4 k* w. j@.createattr("type","string")8 F8 @. y, s7 c4 N# _
if i<0.2# X# f% s( D  |( P3 M2 a  ^
        @.type:="red";0 t3 A+ ~3 i7 J( G8 }1 |
        PartRecord["Number",1]+=1( _5 C/ ^: \' I6 U9 D
elseif i<=0.5 and i>=0.2/ d$ P, ?# Y  a" C9 Q
        @.type:="green";/ j, B( h* d- T. m6 w# d  @
        PartRecord["Number",2]+=17 Q5 t6 D, D$ J
elseif i>0.5+ z* z+ q% T) @! B& z0 g2 ]
                @.type:="blue";
2 w$ q( Q% ]: ^* H! c8 B$ g. b               PartRecord["Number",3]+=1+ R( S* c* O/ Y1 g$ z
end
 楼主| 发表于 2017-4-28 14:56:22 | 显示全部楼层
devin 发表于 2017-4-28 09:29
+ E6 T& M: g4 @' z! k0 e修改如下應該就沒問題
5 V- [9 F! ?5 t& d0 M0 F7 u) ~, c0 @  w8 Z6 j+ G/ {& N; x7 w
var i:real
* ~8 P. }" |" X0 u" ^' S
谢谢指导
 楼主| 发表于 2017-4-28 15:55:18 | 显示全部楼层
taoyifei2000 发表于 2017-4-28 01:11
& t4 N. M# x7 {' r6 S2.0的语法变化很大,目前也不算熟,但是粗看你这段代码,问题还是有的,比如赋值@.type="red",应该用:=赋 ...

, V6 b4 W2 m; f, z0 _谢谢指导
 楼主| 发表于 2017-5-9 17:28:47 | 显示全部楼层
var i:real8 Q- |* ~! @, i2 t  w/ E
i:=z_uniform(1,0,1)
; [) O+ D5 U# b6 |; T3 U@.createattr("type","string")
1 S( }7 R6 `7 p1 O8 ?3 U3 Kif i<0.2$ ?: |$ c4 I; ~2 {
        @.type:="red"
% f6 j) N0 S* r: M9 e: I8 t* z+ w; j        PartRecord["Number",1]+=1
. R" w4 U5 p3 _' f& Kelseif i<=0.5 and i>=0.2
3 x0 x" X$ X% v1 u* N        @.type:="green"7 b% n' @5 F4 E' }, e
        PartRecord["Number",2]+=1. r: Q  K/ U8 D
else ' h/ F% O5 q$ L5 m( _: `
        @.type:="blue"
/ e8 a1 L+ F: Z: V8 D2 y        PartRecord["Number",3]+=1
4 G; F+ Q7 @' n. i+ Wend
# c. n1 l% ?% z8 ]9 w3 f5 W) u7 R* @7 L* X: K, n) c1 v
deleteMovables
8 ]4 @. d! k5 |$ m5 YPartRecord.delete({2,1}..{2,3})
7 ~( G3 c) F* e这是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-27 18:16 , Processed in 0.017644 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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