Напишите функцию, которая печатает каждую цифру n^100

Меня попросили написать функцию Java, которая принимает целое число, nи распечатывает значение n^100,

Я понятия не имею, как подойти к этому. Я знаю, обычными средствами это переполнится как n растет. Ответы, такие как: 5.32 x 10^20 не принимаются Это должна быть каждая цифра.

Так, например:

public void byHundred(int n) {
  result = //some computation that yields the string
  System.out.println(result);
}

Так, byHundred(23) распечатывает "14886191506363039393791556586559754231987119653801368686576988209222433278539331352152390143277346804233476592179447310859520222529876001"

1 ответ

Решение

Вы могли бы использовать BigInteger и что-то вроде

public static void byHundred(int n) {
    BigInteger bi = BigInteger.valueOf(n);
    String result = bi.pow(100).toString();
    System.out.println(result);
}

public static void main(String[] args) {
    byHundred(23);
}

Выход 14886191506363039393791556586559754231987119653801368686576988209222433278539331352152390143277346804233476592179447310859520222529876001 (как просили).

Другие вопросы по тегам