首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

3/27的有关问题,关于BigInteger

2013-04-02 
3/27的问题,关于BigInteger现在在学着循环语句了.在求阶乘的问题上遇到了个问题,求10的阶乘用Int和long都

3/27的问题,关于BigInteger
现在在学着循环语句了.在求阶乘的问题上遇到了个问题,求10的阶乘用Int和long都够用,但是求50,.100的阶乘就不够了,我就找到了一个BigInteger能够给无限大,但是我不知道怎么用.查了API也弄不懂,BigInteger不是和Int一样的吗?直接对一个数进行声明.


import java.io.*;
import java.util.Scanner;
public class T1
{
 public static void main(String[] args)
 {
  BigInteger jc=1;
  int i=1;
  int a;
 System.out.println("请输入要求阶乘的数:");
 Scanner sc=new Scanner(System.in);
 a=sc.nextInt();
  while(i<=a)
  {
   jc*=i;
   i++;
  }
  System.out.println("输入的数的阶乘是:"+jc);
 }
}
java
[解决办法]


public class Test
{
public static void main(String[] args)
{

BigInteger jc = BigInteger.valueOf(1);
int i = 1;
int a;
System.out.println("请输入要求阶乘的数:");
Scanner sc = new Scanner(System.in);
a = sc.nextInt();
while (i <= a)
{
jc = jc.multiply(BigInteger.valueOf(i));
i++;
}
System.out.println("输入的数的阶乘是:" + jc);

}
}

热点排行