求大数

Java中提供了BigInteger类,利用它我们可以很方便地求出较大的数。下面有一个求裴波纳契数列第n项的实例。



输入一个数字n,然后是n行,每行有一个数字pi(0<pi<=1000),求对应的f(pi),每个结果占一行输出。

样列输入:

5
1
2
3
4
5

样列输出:

1
1
2
3
5

Java代码如下:

import java.util.*;
import java.math.*;
public class Main
{
	public static void main(String[] args)
	{
		int i,n,pi;
		BigInteger[] f=new BigInteger[1003];
		f[0]=BigInteger.ZERO;
		f[1]=BigInteger.ONE;
		f[2]=BigInteger.ONE;
		f[3]=f[1].add(f[2]);
		for(i=4;i<=1000;i++)
		{
			f[i]=f[i-1].add(f[i-2]);//打表,先求出前n项的值。
		}
		Scanner input=new Scanner(System.in);
		n=input.nextInt();
		for(i=1;i<=n;i++)
		{
			pi=input.nextInt();
			System.out.println(f[pi]);
		}
	}
}
posted @ 2020-01-15 19:56  tktktu  阅读(85)  评论(0)    收藏  举报