В этом диапазоне разница между последовательными значениями double
равна 32. 150094635296999121 - это правильный ответ в виде целого числа, но это число нельзя точно представить как double
.
.1005 *BigInteger
, чтобы получить точный ответ:
Math.pow(9, 18) == 150094635296999136
BigInteger.valueOf(9).pow(18) == 150094635296999121