Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
把BufferedReader那行拿到循环外面In Reply To:Re:为什么总是RuntimeError的,会有什么原因导致这样的? Posted by:victor286 at 2006-04-08 17:49:42 我是new to java,不过我觉得是因为这样 你的stdin的带buffer的,new了之后就把输入都读走了,等下一次new的时候输入已经空了,于是stdin.readLine()返回null,parseInt就抛异常了 > import java.io.*; > import java.util.*; > public class Main > { > > public static void main(String args[])throws IOException > {Vector v=new Vector(); > Vector k=new Vector(); > > while(true){ > > BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in)); > String s=stdin.readLine(); > int n=Integer.parseInt(s); > if(n==0)break; > k.add(""+n); > int suma=0; > int i=1; > while(true) > { > suma=suma+i; > > if(suma>n)break; > i++; > } > int sumb=0; > for(int j=1;j<=i;j++) > { > sumb=sumb+j*j; > > } > > > v.add(""+(sumb-(suma-n)*i)); > } > for(int c=0;c<v.size();c++) > { > String s1=(String)k.get(c); > String s2=(String)v.get(c); > int a=Integer.parseInt(s1); > int b=Integer.parseInt(s2); > System.out.println(a+" "+b); > } > } > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator