Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 不使用BigNumber的功率计算_Java - Fatal编程技术网

Java 不使用BigNumber的功率计算

Java 不使用BigNumber的功率计算,java,Java,如何解决以下问题 计算不带大整数或大数字的X^Y 需要打印所有数字,例如2^64=18446744073709551616 我已经用Java编写了代码,但是没有得到更高数字的确切结果 我的代码: public class Calculation { ArrayList<Double> c = new ArrayList<Double>(); double a = 2; double b = 64; double[] d = new dou

如何解决以下问题

  • 计算不带大整数或大数字的X^Y
  • 需要打印所有数字,例如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();
        }
    }
    
    公共类计算{
    ArrayList c=新的ArrayList();
    双a=2;
    双b=64;
    double[]d=新的double[5];
    公共计算()
    {
    d[0]=java.lang.Math.pow(a,b);
    System.out.println(d[0]);
    }
    公共静态void main(字符串[]args)
    {
    计算=新计算();
    calculation.powerCalculation();
    }
    }
    
    双精度的尾数不够长,无法容纳
    2^64
    的数字。 简单但困难的方法是使用

    ArrayList<Byte> a;
    
    arraylista;
    

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

    您编写的代码是什么?您可以使用数组表示法来存储大数字。例如,1个数组位置中的1个数字<代码>a={1、2、3、3、4、5 5}a={{1、2、3、3、3、3、4、3、5、5 5 5 5}{1、1、1、2、2、3、3、3、3、3、3、4、5、5 5 5}码>公开类公开类公开类公开类公开类公开类公开类公开类公开类公开类公开类公开类公开类公开类公众类公开类公开类公开类公众类公众类公众类甲a=1、1、1、1、1、1、1、1、1、1、1、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、3、3、3、3、3、3、3、3“;”;public void calc(){c=java.lang.Math.pow(a,b);e=formatter.format(c);System.out.println(e);}public static void main(字符串[]args){cala=new-Cal();a.calc();}}说出来Mike。你可以自己看到它不清晰。把它编辑到你的问题中。
    X
    可以有什么值?有还是总是
    2