Audiophile's Blog
Логин:Пароль:


Забыл пароль | Регистрация (убрать всю рекламу)
О сайте | Ликбез | Словарь | Audiophile's Testroom | Поддержать | Контакты
Разделы
Поиск по сайту
Популярное
Персональная настройка
Настройка звука онлайн (foobar2000, драйвера, Windows), создание персональных сборок foobar2000.

Контакты

Случайный опрос
Какой lossless кодек вы предпочитаете?
Всего ответов: 3565
Полезный софт
Opera QIP 2010 Download Master µTorrent
Ace Utilities AIDA64 SpeedFan 7-Zip
ESET NOD32 FileZilla Media Player Classic Home Cinema Paint.NET
Sony Sound Forge VirtualDub Unlocker Punto Switcher
Похожие проекты
Сейчас на сайте
Онлайн всего: 9
Гостей: 9
Пользователей: 0
»

Как найти факториал миллиарда


20 Мая 2013, 22:21

Факториал — весьма интересная, чрезвычайно быстро растущая функция. Факториал четырех равен 24, факториал 10 — уже 3628800, факториал сотни: 100!=9.33e+157, а вот факториал тысячи вам не посчитает даже калькулятор Google — Infinity (бесконечность), и всё тут.

Этот вопрос интересовал меня давно. Мне как-то вздумалось хотя бы приблизительно узнать количество нулей у числа, равного факториалу миллиарда (1000000000!). А ведь правда, если нельзя узнать его точно, то хотя бы порядок ведь можно определить. Для этого я решил найти зависимость количества нулей (порядка) от показателя степени аргумента факториала (для простоты возьмем за основание десятку) и написал следующую задачу:

Имеется число 10^n, его факториал представлен в виде числа с плавающей точкой:

(10^n)!=m*(10^x)

При этом имеется определенная зависимость показателя степени результата от показателя степени n в аргументе:

x=f(n)=?

Именно это зависимость я и решил найти.

Первым делом следовало найти альтернативный метод вычисления факториала — без перемножения всех членов ряда натуральных чисел. Покопав на эту тему, я обнаружил замечательную формулу, именуемую формулой Стирлинга, упрощенный вид которой выглядит следующим образом:

И эта формула как нельзя лучше подошла для моей задачи. В данном случае её следует переписать так:

А теперь выполним некоторые преобразования:

Чтобы перейти к степеням десятки, следует преобразовать число e:

Выполним преобразование показателя, совместив показатели при десятках, и получим:

Теперь проверим формулу в Mathcad:

Как видим, полученные по нашей формуле результаты довольно таки похожи на правду. Осталось лишь определиться с нулями. В данном случае мантиссой, т.е. коэффициентом 2,507 можно пренебречь (так как он меньше десяти, т.е. даже лишний порядок едва ли прибавит, а речь идет о тысячах порядков). У нас остается показатель степени десятки, который собственно и определяет порядок. Итак, возвращаясь к задаче, пишем ответ:

А теперь — самое интересное. Найдем количество нулей для факториалов степеней десятки от 1 до 9 (от десяти до миллиарда):

Вуаля! Теперь мы знаем, что факториал миллиарда имеет около девяти миллиардов нулей. Аплодисменты, занавес...


Информация от спонсора

Leading CHARTER Technologies: один из лидеров на рынка бизнес-авиации. На сайте компании Вы можете легок и быстро сделать заказ частного самолета. Ваш персональный менеджер подберет для Вас рейс в полном соответствии с Вашими потребностями.

 
   
Просмотров: 3372 | Автор: | Добавил: Audiophile () | Рейтинг: 5.0/5, голосов: 1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Авторские статьи
Сообщество
Последнее на форуме
Кодеки
TAK FLAC APE WV
MPC OGG AAC/ALAC MP3
WMA TTA OFR LA
Теги
Follow me
Twitter YouTube
Google+ Facebook
Полезные ссылки
Copyright Taras Kovrijenko © 2009–2016