Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.20;
Скачать: CL | DM;

Вниз

Математики, вопрос для вас   Найти похожие ветки 

 
Vasya.ru ©   (2005-03-04 10:44) [0]

есть формула ((N + K - 1)! - N!) / K!, (0 < N, K < 1000000000). Собственно вопрос в том, как это можно рассчитать для разных наборов N, K, пользуясь только стандартными средствами TP, не используя длинную арифметику?


 
Думкин ©   (2005-03-04 10:49) [1]

N=999999999 K=2 И как не используя длинную?


 
TUser ©   (2005-03-04 11:02) [2]

По Стирлингу ее преобразовать, наверное


 
Alx2 ©   (2005-03-04 11:03) [3]

TUser ©   (04.03.05 11:02) [2]
Вот это очень мешает: (N + K - 1)! - N!


 
Alx2 ©   (2005-03-04 11:04) [4]

TUser ©   (04.03.05 11:02) [2]
Т.е. преобразовать-то можно, но для приемлемой точности аппроксимации на K и N лягут сильные ограничения


 
Думкин ©   (2005-03-04 11:05) [5]

> [2] TUser ©   (04.03.05 11:02)

В моем случае будет:

999999999!*999999999/2 как это согласовать со словами:

> пользуясь только стандартными средствами TP, не используя длинную арифметику?


?


 
MBo ©   (2005-03-04 11:07) [6]

в общем случае, конечно, в целых числах не выйдет.
Преобразуем так, чтобы не считать совсем уж офигенные
числа:
N!/K! * ((N+K-1)!/N! - 1)

для N>K

nk:=1;
for i:=k+1 to n do
 nk:=nk*i;

nk1:=1;
for i:=n+1 to n+k-1 do
 nk1:=nk1*i;

Result:=nk*(nk1-1);


 
Alex Konshin ©   (2005-03-04 11:23) [7]

a!/b! можно сократить.



Страницы: 1 вся ветка

Текущий архив: 2005.03.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.055 c
1-1109871255
Checist [root]
2005-03-03 20:34
2005.03.20
Нужен компонент TrayIcon


14-1109525705
Piter
2005-02-27 20:35
2005.03.20
Где достать декомпилятор для Visual Basic?


14-1109141254
Mystic
2005-02-23 09:47
2005.03.20
Тест на IQ


4-1107546201
XAN
2005-02-04 22:43
2005.03.20
kak cdelat tak ctobi ikonka proqrammi bila v systray


1-1110167360
X-Disa
2005-03-07 06:49
2005.03.20
Отлов щелчка мыши