Я делаю свои первые попытки использовать BigDecimal. Это кажется хитрым. У меня проблема, и я хотел бы понять, что ее вызывает.
public static String nominator(String nbrPeople)
{
BigDecimal nom = new BigDecimal("365") ;
BigDecimal days = new BigDecimal("365") ;
int limit = Integer.parseInt(nbrPeople);
for (int i = 0 ; i < limit ; i++ )
{
days = days.substract(i) ;
nom = nom.multiply(days) ;
}
return nbrPeople ;
}
это часть большой программы. это метод, который должен вычислять что-то вроде этого:
365 x (365-1) x (365-2) x (365-3) и т. Д. В зависимости от значения nbrPeople, переданного.
Я хотел бы понять, почему я получаю следующее сообщение об ошибке:
не может найти символ
метод substract (int)
не для обсуждения факториалов, а для использования BigDecimal (или BigInteger). Я использую BigDecimal, потому что на более позднем этапе мне нужно будет делить, в результате чего с плавающей запятой.
EDIT
РЕДАКТИРОВАТЬ 2
удалено первое редактирование (код), чтобы сделать сообщение более читабельным - правильный код был опубликован ниже добрым программистом