Re: Issues with factorial operator

Поиск
Список
Период
Сортировка
От Dann Corbit
Тема Re: Issues with factorial operator
Дата
Msg-id D425483C2C5C9F49B5B7A41F89441547010006FE@postal.corporate.connx.com
обсуждение исходный текст
Ответ на Re: Issues with factorial operator  ("Cui Shijun" <rancpine@gmail.com>)
Ответы Re: Issues with factorial operator  ("Cui Shijun" <rancpine@gmail.com>)
Список pgsql-hackers
> -----Original Message-----
[snip]
> Hum... I think there is a little improvement: when n is too large,(say
> n>10, 000) we can use Stirling's formula to get the estimated value of
> n!    :-)

Or (rather) the log base 10 of Stirling's formula.  The n! estimator
will overflow for sure, unless we take the log of it.

Rather than all that, why not just figure out what the largest number of
digits we will allow is and then don't allow inputs that will generate
more than that.

The program I gave could be run with the target accuracy as the break
out of the loop and then the test would be:

<type> factorial(<type> n)
{
if (n > CONSTANT_PRECOMPUTED_LIMIT)   return NULL;
else   {   return compute_actual_factorial(n);   }
}


В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Cui Shijun"
Дата:
Сообщение: Re: Issues with factorial operator
Следующее
От: Markus Schiltknecht
Дата:
Сообщение: Re: COPYable logs status