Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.034 c
3-1108484945
td
2005-02-15 19:29
2005.03.20
access violation ... idpdx32.dll


3-1108733737
awod
2005-02-18 16:35
2005.03.20
Вопрос по отъеданию памяти Access-ом


1-1110099467
Checist [root]
2005-03-06 11:57
2005.03.20
Maximized form


10-1086094163
Tormoz
2004-06-01 16:49
2005.03.20
Диапазон ячеек в Excel


1-1110033485
ПроНыРа
2005-03-05 17:38
2005.03.20
ToolBar




   Наверх