Форум: "Потрепаться";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];
ВнизМатематики, вопрос для вас Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.043 c