Дискуссионный математический форумМатематический форум
Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 3 часа [ Летнее время ]
новый онлайн-сервис
число, сумма и дата прописью

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Упростить функцию с делением факториалов?
СообщениеДобавлено: 16 июн 2016, 23:35 
Не в сети
Начинающий
Зарегистрирован:
16 июн 2016, 23:25
Сообщений: 1
Cпасибо сказано: 0
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Здравствуйте.
Мне необходимо написать алгоритм для расчета функции:

n!
-----------
k!*(n-k)!

При значениях например:
n = 200
k = 1..n

Может по какому то алгоритму можно сократить эти n и k?

Буду благодарен за любую помощь.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Упростить функцию с делением факториалов?
СообщениеДобавлено: 17 июн 2016, 00:26 
Не в сети
Light & Truth
Зарегистрирован:
10 фев 2013, 21:28
Сообщений: 2695
Cпасибо сказано: 236
Спасибо получено:
841 раз в 775 сообщениях
Очков репутации: 207

Добавить очки репутацииУменьшить очки репутации
Эта функция называется биноминальный коэффициент.
Дробь можно упростить, немного упростится и алгоритм вычисления.

[math]\frac{ n! }{ k! \cdot (n-k) !}=\frac{ (n-k) ! \cdot (n-k+1) \cdot (n-k+2) \cdot (n-k+3) ... \cdot (n-2) \cdot (n-1) \cdot n }{ k! \cdot (n-k) ! } = \frac{ (n-k+1) \cdot (n-k+2) \cdot (n-k+3) ... \cdot (n-2) \cdot (n-1) \cdot n }{ k! }[/math]

Алгоритм получается такой:
1. Перемножаем все натуральные числа от [math]n[/math] до[math](n-k+1)[/math]
2. Перемножаем все натуральные числа от [math]1[/math] до [math]k[/math]
3. Находим частное.
Проблема может случиться если произведение будет очень большим и будет переполнять формат.
Тогда придется постепенно умножать и сразу делить, чтобы не выращивать числитель и знаменатель.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Упростить функцию с делением факториалов?
СообщениеДобавлено: 17 июн 2016, 09:13 
Не в сети
Последняя инстанция
Зарегистрирован:
06 дек 2014, 09:11
Сообщений: 7070
Cпасибо сказано: 115
Спасибо получено:
1662 раз в 1508 сообщениях
Очков репутации: 283

Добавить очки репутацииУменьшить очки репутации
Anatole писал(а):
Проблема может случиться если произведение будет очень большим и будет переполнять формат.
Тогда придется постепенно умножать и сразу делить, чтобы не выращивать числитель и знаменатель.


[math]C^{100}_{200}[/math] по-любому переполнит. Так что все равно придется BigInteger использовать, и тогда проще сначала умножить, а потом делить, чтобы проблем с округлением не было.

Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему      Страница 1 из 1 [ Сообщений: 3 ]

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Доказательство ВТФ делением

в форуме Палата №6

serg_

56

2033

16 июл 2017, 13:08

Найти предел (с целочисленным делением)

в форуме Пределы числовых последовательностей и функций, Исследования функций

helen_dada

1

98

17 ноя 2020, 01:41

Упростить логическую функцию

в форуме Дискретная математика, Теория множеств и Логика

m0nesy

2

195

08 май 2020, 21:22

Вычитание факториалов

в форуме Начала анализа и Другие разделы школьной математики

afraumar

2

1079

13 фев 2015, 10:57

Упростить логическую функцию двух переменных

в форуме Дискретная математика, Теория множеств и Логика

fractal

0

798

18 мар 2015, 15:01

Первые цифры факториалов

в форуме Задачи со школьных и студенческих олимпиад

Xenia1996

0

244

13 ноя 2020, 12:29

Доказательство теоремы факториалов, математика

в форуме Комбинаторика и Теория вероятностей

afraumar

8

859

03 апр 2015, 19:39

Сделать из ряда arch(x) формулу без факториалов

в форуме Ряды

Kartysh0v

4

147

06 июн 2022, 20:22

Использование факториалов при выводе формулы Стирлинга

в форуме Ряды

Alisa_3

1

449

02 апр 2016, 23:48

Исследовать функцию Исследуйте функцию

в форуме Пределы числовых последовательностей и функций, Исследования функций

BaHTyC

1

364

19 май 2015, 17:28


Часовой пояс: UTC + 3 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2023 MathHelpPlanet.com. All rights reserved