有三个小朋友甲乙丙。甲有50粒糖果,乙有43粒糖果,两有13粒糖果。现在他们做一个游戏。从甲开始,将自己的糖分三份,自己留一份,其余两份分别给乙与丙,多余的糖果自己吃掉,然后乙与丙也依次这样做。问最后甲、乙、丙三人各有书多少粒糖果?
implementation
program ex2;
 var A,B,C:integer;
begin
 A:=50;B:=43;C:=13; {初始时每个小朋友所拥有的糖果数}
 A:=A div 3; B:=B+A;C:=C+A;{甲小朋友分糖果后,每个人拥有的糖果数变化情况}
 B:=B div 3; A:=A+B;C:=C+B; {乙小朋友分糖果后,每个人拥有的糖果数变化情况}
 C:=C div 3; A:=A+C;B:=B+C; {丙小朋友分糖果后,每个人拥有的糖果数变化情况}
 writeln('A=',A,'B=',B,'C=',C); {输出结果}
 readln;
{$R *.dfm}
end.
问题是:我RUN的时候总是报错,代码是“[Error] Unit1.pas(21): Declaration expected but 'PROGRAM' found”
怎么回事啊?

解决方案 »

  1.   

    在READLN之后加上“END;”还是不行啊。怎么回事?
      

  2.   

    先生你把代码放错位置了,给你改一下
    implementation {$R *.dfm}//代码必须放在它的后面procedure ex2; 
     var A,B,C:integer; 
    begin 
     A:=50;B:=43;C:=13; {初始时每个小朋友所拥有的糖果数} 
     A:=A div 3; B:=B+A;C:=C+A;{甲小朋友分糖果后,每个人拥有的糖果数变化情况} 
     B:=B div 3; A:=A+B;C:=C+B; {乙小朋友分糖果后,每个人拥有的糖果数变化情况} 
     C:=C div 3; A:=A+C;B:=B+C; {丙小朋友分糖果后,每个人拥有的糖果数变化情况} 
     writeln( 'A= ',inttostr(A), 'B= ',inttostr(B), 'C= ',inttostr(C)); {输出结果} 
     readln; 
    end;
     
    end. 
    现在再试试
      

  3.   

    忘了你的程序还有问题
     writeln(  'A=  ',inttostr(A),  'B=  ',inttostr(B),  'C=  ',inttostr(C)); {输出结果}  
     readln;  
    这两句是写读文件用的,你放这儿干什么,建议把上面两句改成
    showmessage('A=  ',inttostr(A),  'B=  ',inttostr(B),  'C=  ',inttostr(C));
      

  4.   

    最基本的了,报错就是少了end的,如果还有其他错,又是别一回事了,多看看书!!!