Гипергеометрическое распределение
Falk0ner, вс, 06/07/2008 - 15:35.
Гипергеометрическое распределение
{ **** UBPFD *********** by kladovka.net.ru ****
>>
Возвращает случайное число, распределенное по гипергеометрическому закону
распределения
Зависимости: system
Автор: Алексей Перов, <a href="mailto:aperov@rambler.ru">aperov@rambler.ru</a>, ICQ:102661702, Караганда
Copyright: Лабораторные работы по курсу "Моделирование информационных систем", КарГТУ
Дата: 26 апреля 2002 г.
********************************************** }
function RandomGipgeo(tn, ns, p: Extended): Extended;
{ гипергеометрическое распределение }
var
x, s: Extended;
i: Integer;
begin
x := 0;
for i := 1 to Round(ns) do begin
if Random - p <= 0
then begin
s := 1;
x := x + 1
end
else s := 0;
p := (tn * p - s) / (tn - 1)
end;
Result := x
end;
>>
Возвращает случайное число, распределенное по гипергеометрическому закону
распределения
Зависимости: system
Автор: Алексей Перов, <a href="mailto:aperov@rambler.ru">aperov@rambler.ru</a>, ICQ:102661702, Караганда
Copyright: Лабораторные работы по курсу "Моделирование информационных систем", КарГТУ
Дата: 26 апреля 2002 г.
********************************************** }
function RandomGipgeo(tn, ns, p: Extended): Extended;
{ гипергеометрическое распределение }
var
x, s: Extended;
i: Integer;
begin
x := 0;
for i := 1 to Round(ns) do begin
if Random - p <= 0
then begin
s := 1;
x := x + 1
end
else s := 0;
p := (tn * p - s) / (tn - 1)
end;
Result := x
end;
Пример использования:
x := RandomGipgeo(2.5, 3, 0.4);
Отправить комментарий