不使用 BigNumber 的功率计算

  • 本文关键字:功率 计算 BigNumber java
  • 更新时间 :
  • 英文 :


如何解决以下问题?

  1. 计算 X^Y,不带大整数或大数。
  2. 需要打印所有数字,例如 2^64 = 18446744073709551616。

我用 Java 编写了代码,但我没有得到更高位数的确切结果。

我的代码:

public class Calculation {
    ArrayList<Double> c = new ArrayList<Double>();
    double a = 2;
    double b = 64;
    double[] d = new double[5];

    public void powerCalculation()
    {
        d[0] = java.lang.Math.pow(a, b);
        System.out.println(d[0]);
    }

    public static void main(String[] args)
    {
        Calculation calculation = new Calculation();
        calculation.powerCalculation();
    }
}
双尾数不够

长,无法容纳2^64的数字。简单但困难的方法是使用类似的东西

ArrayList<Byte> a;

(其中a.get(x)表示位置10^x的值)并重写您在学校学到的加法、乘法和幂的算法。

最新更新