欢迎访问服务器技术网-www.fuwuqijishu.com

为什么我用java写的小程序来计算从1加到n,

程序设计 fuwuqijishu 2年前 (2022-10-01) 11次浏览 0个评论 扫描二维码

关于为什么我用java写的小程序来计算从1加到n,输入n的值太大会得出负数 的问题

n=100时数目巨大,因此保存数字用的类型为BigInteger
代码如下
import java。math。BigInteger;
public class Fibonacci {
static BigInteger[] fib;
// 获得斐波那契数列
public static void getFibonacci(int max) {
 fib = new BigInteger[max];
 fib[0] = fib[1] = BigInteger。
ONE;
 for (int i = 2; i
  fib[i] = fib[i – 1]。add(fib[i – 2]);
 }
}
// 获得斐波那契数列位置为index的值
public static BigInteger fib(int index) {
 return fib[index – 1];
}
public static void main(String[] args) {
 getFibonacci(100);// 生成长度为100的斐波那契数列
 BigInteger gcd = fib(100)。
gcd(fib(99));// 求最大公约数进行约分
 System。err。println(“fib(99)/fib(100)=” fib(99)。divide(gcd) “/”
    fib(100)。
divide(gcd));
}
}。

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

Warning: error_log(/www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/#log/log-2503.txt): failed to open stream: No such file or directory in /www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/spider.class.php on line 2900