如何计算 java 中字符串格式的大数模数
How can I calculate modulo of a large number in String format in java
我正在尝试计算字符串中 java 中的表达式
IE
99999999999999999^99999999999999999
我想计算这个数字模 1000000007
。
我目前正在尝试将大数字存储为双精度,但对双精度取模给了我 NaN
。
有人可以帮忙吗?
您可以像
一样使用BigInteger
和modPow(BigInteger, BigInteger)
BigInteger m = new BigInteger("1000000007");
BigInteger a = new BigInteger("99999999999999999");
BigInteger b = new BigInteger("99999999999999999");
BigInteger answer = a.modPow(b, m);
System.out.println(answer);
这给出了
265859324
我正在尝试计算字符串中 java 中的表达式
IE
99999999999999999^99999999999999999
我想计算这个数字模 1000000007
。
我目前正在尝试将大数字存储为双精度,但对双精度取模给了我 NaN
。
有人可以帮忙吗?
您可以像
一样使用BigInteger
和modPow(BigInteger, BigInteger)
BigInteger m = new BigInteger("1000000007");
BigInteger a = new BigInteger("99999999999999999");
BigInteger b = new BigInteger("99999999999999999");
BigInteger answer = a.modPow(b, m);
System.out.println(answer);
这给出了
265859324