Итак, рассмотрим следующий программный сегмент! Я попытался использовать базовую функцию рекурсии для определения факториала числа, но теперь использую класс BigInteger.
public static BigInteger fact(int a)
{
BigInteger factorial = BigInteger.ONE;
BigInteger factz = BigInteger.ONE;
if(a == 1)
{
return factorial;
}
else
{
return factz.multiply(fact(a-1));
}
}
Поэтому, когда я пытаюсь реализовать это в программе, она возвращает результат как 1. Это потому, что объекты BigInteger неизменяемы? Или я что-то здесь упускаю?