Как вычислить обратный факториал вещественного числа? [закрытый]

6
задан Lazer 21 June 2010 в 16:07
поделиться

3 ответа

Используя wolframalpha.com, вы можете запросить

Solve[Gamma[x+1]==1.32934039,x]

Как упоминалось в комментариях, у гаммы нет уникального обратного. Верно, даже когда вы решаете обычный факториал, например

Solve[Gamma[x+1]==6,x]

дает несколько ответов, один из которых равен 3.

Вместо использования Gamma [] в WolframAlpha вы также можете использовать Factorial []:

Solve[Factorial[x]==6,x]
Solve[Factorial[x]==1.32934039,x]
5
ответ дан 8 December 2019 в 18:32
поделиться

Дэвид Кантрелл дает хорошее приближение Γ -1 (n) на этой странице :

k = the positive zero of the digamma function, approximately 1.461632
c = Sqrt(2*pi)/e - Γ(k), approximately 0.036534
L(x) = ln((x+c)/Sqrt(2*pi))
W(x) = Lambert W function
ApproxInvGamma(x) = L(x) / W(L(x) / e) + 1/2
5
ответ дан 8 December 2019 в 18:32
поделиться

Для целых чисел вы можете:

i = 2
n = someNum
while (n != 1):
    n /= i
    i += 1
return (i==1 ? i : None)

Факториал для действительных чисел не имеет обратного. Вы говорите, что «у каждой функции должна быть обратная». Это неверно. Рассмотрим постоянную функцию f (x) = 0 . Что такое f ^ -1 (42) ? Чтобы функция была инверсной, она должна быть одновременно инъекцией и сюръекцией .

3
ответ дан 8 December 2019 в 18:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: