Быстрый способ найти факториал большого числаJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Быстрый способ найти факториал большого числа

Сообщение Anonymous »

Это моя программа, но для действительно больших чисел, например 100 000, она работает очень медленно, есть ли возможность оптимизировать?

import java.math.BigInteger;
import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner in = new Scanner(System.in);

int n = in.nextInt();

BigInteger sum = BigInteger.valueOf(1);

for (BigInteger i = BigInteger.valueOf(n);
i.compareTo(BigInteger.ZERO) > 0;
i = i.subtract(BigInteger.ONE)) {

sum = sum.multiply(i);
}

System.out.println(sum);
}

}


Подробнее здесь: https://stackoverflow.com/questions/514 ... rge-number
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»