#1623: 为什么最后一个数字输出不了?


JJNOT (JJNOT)

學校 : 广东省汕头金山中学
編號 : 5013
來源 : [61.141.0.212]
最後登入時間 :
2010-05-26 21:35:36
a010. 因數分解 | From: [61.141.0.211] | 發表日期 : 2009-03-26 21:54

program a008;
var s,c:array[0..1000] of integer;
    i,m,n:longint;
    d:boolean;
begin
repeat
    readln(m);
    i:=2;
    repeat
    c[i]:=0;
    repeat
    d:=true;
    if m mod i<>0  then d:=false;
    if m mod i=0  then begin
    s[i]:=i;
    m:=m div i;
    c[i]:=c[i]+1;
    end;
    until d=false;
    if c[i]<>0 then write(s[i]);
    if c[i]>1 then write('^',c[i]);
    if (c[i]<>0)and(m<>1) then write(' * ');
    i:=i+1;
    until i>sqrt(m);
    writeln
until eof;
    end.


PASCAL的检察半天就找不出原因?~?

 
ZeroJudge Forum