请问这哪里错了。。。run了output了没错啊。。。

P1035 [NOIP2002 普及组] 级数求和

种子 @ 2015-02-08 13:59:49

var  
02.  k,n,a:integer;  
03.  sn:real;  
04.begin  
05.  read(k);  
06.  a:=1;  
07.  n:=1;  
08.  if (k>15) or (k<1) then write('error') else  
09.    while sn<=k do  
10.    begin  
11.      sn:=sn+a/n;  
12.      n:=n+1;  
13.    end;  
14.    n:=n-1;  
15.  write(n);  
16.end.  

by lin_toto @ 2015-02-08 16:35:53

integer @[url=/space/show?uid=2047]种子[/url]


by 种子 @ 2015-02-09 13:24:12

@[url=/space/show?uid=256]lin_toto[/url] ?


by 种子 @ 2015-02-09 13:25:02

@[url=/space/show?uid=256]lin_toto[/url] 是要改成longint?


by 永忻 @ 2015-02-09 14:32:02

23333333333333333333333333333333333333


by kkksc03 @ 2015-02-09 17:00:24

@[url=/space/show?uid=2047]种子[/url] 你用integer,到了32767后变为-32768,然后再一直到-1,然后变为0,1/0的话看他报错不报错。


by 种子 @ 2015-02-09 22:49:55

@[url=/space/show?uid=1]kkksc03[/url] 咳咳,你们两个挖坟的。。。一楼已经解决所有。。。


by zhuyanyu @ 2015-05-28 21:02:18

var
  n,i:longint;
  x:real; 
begin
  readln(n);
  i:=0;
  x:=0;
  repeat
    inc(i);
    x:=x+1/i;
  until x>n;
  writeln(i);
end.
简单!

|