设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6314|回复: 2

[求助] 程序问题

  [复制链接]
发表于 2015-11-3 14:58:43 | 显示全部楼层 |阅读模式
以下程序运行时显示有语法错误,我是新手,求帮忙看看哪里有语法错误! a. {( Z, w5 V9 B# H
is5 ?! C: i7 S, P  y; L, I, P
        i,j,Rows,Lines:integer;
4 |+ ^" M3 Y6 w2 ]        MachineName,BufName:string;) n! B& {0 _3 m2 i1 y3 A! d
        Machine,Buf:object;3 u! L  {# _( m" r" Z
do
! [8 [3 [2 t" p4 @$ F# {        if Number_Of_Machine/=D_From_To_Chart.YDim then
: s1 R, W0 J  \" C0 u' G, O1 |# Y                inspect messageBox("Number Wrong...,",50,13)3 V( ^- i( Y! H3 n) z, M
                when 16 then
9 T6 V$ a. G. x, I! \0 r) s                        print "Yes";
) i0 Z! h( T/ {# g+ Y+ S                when 32 then
, s6 a% J5 m4 z- r5 k) s3 H* @$ c                        print "No";
# Z& @7 ]' Z1 r& ^* F' z" _                else, ?+ G$ a& P7 C/ B
                        print "Cancel";
, B5 n! F1 w* E$ a                end;
6 H& V+ p2 c/ R. B        EventController.stop;
7 z3 `) b" B; W' B. }5 Xend;, Z/ a6 z( c" \" ^- w
PartsTable.delete;
& X# H  J, `/ N% N/ _for i:=1 to Number_Of_Machine loop
: Q7 }4 k/ D0 T( N  i        for j:=1 to Number_Of_Machine loop
7 m+ F3 y" _2 L4 z5 K) J                if j<i then
! w+ C/ q, E+ T  g6 V. b                        if D_From_To_Chart[j,i]<=0 then# ^; g! a9 e2 B0 s+ @8 n
                                D_From_To_Chart[j,i]:=D_From_To_Chart[i,j];
0 I/ G9 q0 v0 O; g: W                        end;
8 r7 x2 u) c+ R3 W0 n6 m' W                else  x( G' u3 |# W% H5 c4 J6 J& f; V
                        if j=i then
8 \/ P6 ?9 I- M7 A& A( y  {" P                                D_From_To_Chart[j,i]:=0;
% l) q2 a0 M& K                        else
6 G: p3 C! T& H# g& c                                if D_From_To_Chart[j,i]<=0 then) n) j+ T2 T6 @0 ]
                                        messageBox("distence<=0...,",50,13);: o- m: M. T- S0 k( Z3 u6 A: A
                                        EventController.stop;
5 R/ v9 ]7 W6 |: q0 d0 n1 c& j                                end;
  c/ F& y" b' z2 x1 D! f2 B( I                        end;
/ ?% h9 c/ m; b- M8 D4 i# p                end;
  E5 h# e" }9 Z/ b) ^        next;
( G1 a" Y0 x- b. G; unext;9 |4 Z' R9 h7 o/ a& J

( \+ P# m" U. k  @' @end;' o9 s2 q  r3 ?

3 c! F3 Q! f2 V! ?, H! k, t    Lines :=0;+ m, w, k( J% @: v& z. u
        for i:1 to Number_Of_Machine loop! e9 t- q6 @$ @7 Y* \1 V, l' ?0 M
        Rows :=str_to_num(Omit(MachineSequence[1,i],1,1));
1 J# n+ w3 k! ~; y) o        MachineSequence[2,i]:=Rows;) ]; a/ ?9 \: A& e
            for j:1 to Number_Of_Machine loop
! \9 c. [- B6 i                    if W_From_To_Chart[j,Rows]>0 then
1 q! ]; }+ ]- G* f& x                            Lines :=Lines+1;
- B- y3 S% e* I* t1 e                        PartsTable[1,Lines]:=str_to_obj(sprint(".",location.name,".Parts"));
/ f* F5 o* [) k% `                        PartsTable[2,Lines]:=W_From_To_Chart[j,Rows];
; i  d% f( @$ ~9 R& s$ ?                        PartsTable[3,Lines]:=sprint("Parts");
' w' E0 ?# w% P! f% i                        PartsTable[5,Lines]:=Rows;
; t) x  i: R  J9 U9 \/ a4 e                        PartsTable[6,Lines]:=j;9 T  H; K1 t9 c3 k; I
                end;
0 B' P* i& p  B* e9 E        next;- G* s) [7 u3 b! M* N
        MachineName :=sprint("M",Rows);4 w( f: q$ M* c4 V
        Machine:=.MaterialFlow.SingleProc.createObject(current,X_pos_init+D_From_To_Chart[Number_Of_Machine+1,i],Y_pos_init+D_From_To_Chart[Number_Of_Machine+2,i]);
9 z4 A9 {: x7 P" u" j1 y        Machine.Name :=MachineName;
* s% r! N% s1 T' U- _( i6 ~5 m        Machine.ProcTime :=5;
" G+ ^% q' E7 R+ W/ R% b- U+ H        Machine.label :=sprint("machine_",Rows);
4 o4 g# m$ h7 X% ]3 @% T7 [        Machine.ExitCtrl :=ref(Leave);0 s: R% m8 `# d! s* n+ S, ]3 \5 k
       
2 |" y4 M# O1 t* d8 o) D0 ^        BufName :=sprint("BF",Rows);
* T" g8 B! j: W, @4 d/ S3 L        Buf:=.MaterialFlow.Buffer.createObject(current,X_pos_init+D_From_To_Chart[Number_Of_Machine+1,i]-35,Y_pos_init+D_From_To_Chart[Number_Of_Machine+2,i]);! j/ A" b; \! o$ _% Y# Y: ^
                Buf.Name :=BufName;: {' E: ~. o$ c5 @# g: O
        Buf.Capacity :=5000;
( R5 p' P0 e) l( Y        Buf.ProcTime :=0;* Y6 j! e8 s, [# X( v4 U! T. m
        .MaterialFlow.Connector.connect(Buf,Machine);
" D; a2 K' m% v+ fnext;, Z6 [6 |7 g% o/ h1 L
end;
  b) K, E7 C: F/ Q3 N
发表于 2015-11-3 18:23:57 | 显示全部楼层

回帖奖励 +1 金仿真币

end 数量不对 且后面两个for循环 赋值没有等号。。。
 楼主| 发表于 2015-11-4 09:06:13 | 显示全部楼层
老师,我再问一下,哪里的end数量不对啊,我是新手
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-14 22:26 , Processed in 0.017578 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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