Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Может быть. Осталось ее найти. 30.03.05 09:47 Число просмотров: 4263
Автор: Searcher Статус: Незарегистрированный пользователь
|
> Это я к тому, что может быть простая формула для вычисления > простого факториала, которую пока не нашли и для обычного. > НАПРИМЕР, взяли простое число, возвели его в степень, где > показатель - его "порядковый номер", потом его "порядковый > номер" возвели в степень того что получилось в первый раз. > Или что-нибудь в этом духе. И не надо ничего вычислять и > генерить сами числа, перемножать их. Может быть. Осталось ее найти.
> > > Это я к формуле Стерлинга. Там погрешность -4, или 0.0001, > насколько я помню. Если мы не хотим перебирать более 10 > чисел в окресности приближенного факториала, то нам нужно, > чтоб к-1 десятичных знаков были точными из к знаков всего. Я понял. В этой формуле первые два члена "отвечают" за быстрое вычисление,
а последний, то что я неправильно назвал полиномом, (1+12/n+1/(288n^2)...),
"отвечает" за точность. Так если 4 члена обеспечивают точность в -4, то 308 членов могут обеспечить точность 308 знаков? Тогда для искомого вычисления факториала неизвестными остаются только эти члены.
> > Тем не менее, если рассматривать два ряда > > 1*2*3*....*100 и > > 101*102*103*...*200 .... > > А к чему это? К тому, что если вычислять факториал, то это эквивалент ряда 1*2*3*...*100. И его приближенное значение
как 50^50 будет очень не точным (разница в пару десятков порядков).
А если вычислять "частичный факториал" т.е. произведение, начинаемое не с 1, а с 101, и для "корректности сравнения", тоже из 100 членов, 101*102*...*200, то его приближенное значение в 150^50 будет существенно точнее.
Возвращаясь к исх. задаче и приближенной формуле: Есть число N, надо найти k!, где k~корень(N), с учетом того, что один из множителей принадлежит диапазону от 1 до k. Так вот если значение k! приближенно расчитывать, как
(k/2)^(k/2), то оно от реального будет отличаться на пару порядков.
А если считать произведение от (k/4) до (k/2), то его значение приближенное значение как (k*3/4)^(k/4) будет существенно точнее. И цена за такое существенное увеличение будет "всего" вдвое уменьшение шансов.
|
|
|