亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? hypergeometricprobability.cpp

?? A program for calculation of hypergeometric distribution
?? CPP
字號:
/*
	Author: Joe Nellis
	email: mrknowitall@mtcrossroads.org
	date: Jan 2003
	
	**Notice and Disclaimer**
		This code is hereby donated to the public domain.  You may modify
	or take from the code what you will, all I ask is for some recognition or this comment block
	be included in said used/modified code. This codes comes AS IS in all its glory, with or 
	without bugs, performance hitches, or other behavioral anomolies. 
		Concerned users should consider not using this code without further 
	scrutiny for the following uses: Delivering babies, guiding missles, controlling pacemakers,
	controlling chicken plucking robots, mixing cocktails, personal banking or fur trapping.
*/
// HyperGeometricProbability.cpp: implementation of the HyperGeometricProbability class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "HyperGeometricProbability.h"
#include <assert.h>

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
// The HyperGeometric probability is defined by:
// The equation: (rCy)*((N-r)C(n-y))/(NCn)
// where (x C y ) represents a combination, "x choose y" 
HyperGeometricProbability::HyperGeometricProbability(int N, int n, int y, int r,
													 Probability::RandomVariableType rvt)
	:m_population(N), m_sample(n), m_red(y), m_black(n-y),m_selectedset(r),Probability(y,rvt)
{
	assert( y <= r);
	assert(n-y <= N-r);
	assert(y>=0);
	assert(N>0);
	assert(r>=0);
	assert(n>=0);
}

void HyperGeometricProbability::SetRV(int Y)
{
	assert(Y>=0);
	assert(Y <= m_selectedset);
	assert(m_sample - Y <= m_population - m_selectedset);
	m_red = Y;
	m_black = (m_sample - m_red);
}

// The expected value or population mean is defined by:
// E(Y) = n*r/N
double HyperGeometricProbability::GetExpectedValue() const
{
	return m_sample * m_selectedset / m_population;
}

// The variance is defined by:
// V(Y) = n * (r/N) * (N-r)/N * (N-n)/(N-1)
double HyperGeometricProbability::GetVariance() const
{
	if( m_population == 1)
		return 0.0;
	return m_sample * m_selectedset / m_population * (m_population - m_selectedset) / m_population * \
		(m_population - m_sample) / (m_population -1);
}


// The equation: (rCy)*((N-r)C(n-y))/(NCn)
/* Computing the result
	The computation is composed of pure combinations which are 
	handled in the same fashion as the Binomial and NegativeBinomial
	probabilities.  The equation is broken up into numerators and
	denominators and then appropriately multiplied by or divided by 
	depending on the running result being above or below 1.0.
*/
double HyperGeometricProbability::ComputeResult() throw (ProbabilityException)
{
	if(m_population ==0)
		return 0.0;
	double result = 1.0;
	int numer1,numer2,numer3,numer1cmp,numer2cmp,numer3cmp;
	int denom1,denom2,denom3,range1,range2,range3;
	numer1 = numer1cmp = m_selectedset;
	numer2 = numer2cmp = m_population - m_selectedset;
	numer3 = numer3cmp = m_population;
	
	//optimization on (rCy)
	if(m_selectedset-m_red > m_red)
		range1 = denom1 = m_red;
	else
		range1 = denom1 = m_selectedset - m_red;

	//optimization on ((N-r)C(n-y))
	if((m_population - m_selectedset) - (m_sample - m_red) > m_sample - m_red)
		range2 = denom2 = m_sample - m_red;
	else
		range2 = denom2 = (m_population - m_selectedset) - (m_sample - m_red);

	//optimization on (NCn)
	if(m_population - m_sample > m_sample)
		range3 = denom3 = m_sample;
	else
		range3 = denom3 = m_population - m_sample;
	
	while(numer1 > numer1cmp-range1 || numer2 > numer2cmp-range2 || numer3 > numer3cmp-range3
			|| denom1>0 || denom2>0 || denom3>0)
	{
		if(result > 1.0 || denom3 == 0 )
		{	
			if(denom1 > 0 )
				result = result / denom1--;
			else if(denom2 > 0 )
				result = result / denom2--;
			else if(numer3 > numer3cmp - range3 )
				result = result / numer3--;
			else
				throw ProbabilityException("HyperGeometric Probability error- premature end of divisors");
		}
		else if(result <=1.0 || numer3 - range3 == 0 )
		{
			if(numer1 > numer1cmp - range1 )
				result = result * numer1--;
			else if(numer2 > numer2cmp - range2 )
				result = result * numer2--;
			else if(denom3 > 0 )
				result = result * denom3--;
			else 
				throw ProbabilityException("HyperGeometric Probability error- premature end of multipliers");
		}
		else
			throw ProbabilityException("HyperGeometric Probability error- result is NaN");		
	}
	return result;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美熟乱第一页| 99久久er热在这里只有精品66| 欧美日韩午夜在线| 亚洲va欧美va天堂v国产综合| 7777精品伊人久久久大香线蕉完整版 | 亚洲人精品午夜| 色综合婷婷久久| 亚洲综合色丁香婷婷六月图片| 欧美丰满一区二区免费视频 | 国产乱子轮精品视频| 久久久欧美精品sm网站| 成人av高清在线| 综合久久久久久久| 欧美精品亚洲二区| 国产麻豆一精品一av一免费| 成人免费视频在线观看| 久久久精品影视| 99久久精品国产一区| 亚洲成人激情av| 国产亚洲欧洲997久久综合| a在线欧美一区| 五月婷婷久久综合| 国产欧美精品一区二区色综合 | 色综合久久天天综合网| 日韩在线一区二区三区| 久久午夜老司机| 色综合色综合色综合| 九色porny丨国产精品| 亚洲天堂精品视频| 日韩精品中文字幕一区| 93久久精品日日躁夜夜躁欧美| 午夜精品久久久久久久久久久 | 中文字幕不卡的av| 欧美日韩成人综合| 高清免费成人av| 视频一区视频二区中文| 欧美激情一区二区三区蜜桃视频| 在线电影欧美成精品| 高清不卡在线观看av| 日韩成人免费电影| 亚洲蜜臀av乱码久久精品| 欧美v亚洲v综合ⅴ国产v| 色吊一区二区三区| 成人综合婷婷国产精品久久蜜臀| 五月婷婷欧美视频| 亚洲激情欧美激情| 欧美激情一区二区三区全黄| 日韩美一区二区三区| 在线看国产一区| 欧美一级午夜免费电影| av电影天堂一区二区在线| 毛片一区二区三区| 婷婷激情综合网| 亚洲一二三专区| 国产精品女主播av| 久久久精品综合| 欧美大尺度电影在线| 欧美日韩一区二区三区视频| 92国产精品观看| 粉嫩一区二区三区性色av| 国模无码大尺度一区二区三区| 婷婷开心久久网| 亚洲一线二线三线视频| 亚洲欧美一区二区不卡| 国产亚洲精品bt天堂精选| 99久久综合99久久综合网站| 丰满亚洲少妇av| 国产成人精品一区二区三区网站观看| 美女国产一区二区三区| 久久精品国产澳门| 免费高清在线一区| 久久99久国产精品黄毛片色诱| 丝袜美腿亚洲一区| 午夜国产精品影院在线观看| 午夜精品在线看| 日韩va亚洲va欧美va久久| 三级在线观看一区二区 | 一区在线中文字幕| 中文在线免费一区三区高中清不卡| 国产色婷婷亚洲99精品小说| 国产日产欧美一区二区视频| 国产欧美一区二区精品仙草咪| 久久久午夜精品| 欧美韩国一区二区| 亚洲同性同志一二三专区| 亚洲精品中文在线| 午夜在线电影亚洲一区| 蜜臀av性久久久久av蜜臀妖精 | 欧美人体做爰大胆视频| 7777精品伊人久久久大香线蕉 | 精品免费99久久| 精品久久久久久久久久久久久久久| 日韩欧美亚洲国产另类| 久久在线观看免费| 国产精品久久久久国产精品日日| 国产精品美日韩| 亚洲特级片在线| 五月激情六月综合| 国产伦精品一区二区三区视频青涩| 国产成人午夜精品影院观看视频| 99re这里都是精品| 欧美日本一区二区| 久久久久久久一区| 亚洲美女在线一区| 免费日本视频一区| 岛国一区二区在线观看| 欧美亚洲一区二区在线| 日韩欧美高清在线| 国产精品亲子伦对白| 亚洲成a人v欧美综合天堂| 精一区二区三区| 不卡视频免费播放| 欧美一级高清大全免费观看| 国产无一区二区| 亚洲电影一级片| 国产二区国产一区在线观看| 欧洲色大大久久| 国产日韩欧美精品电影三级在线| 一区二区成人在线视频| 久久www免费人成看片高清| 91免费国产视频网站| 日韩久久免费av| 一区二区三区日韩欧美| 韩国av一区二区| 欧美日韩国产小视频在线观看| 久久久久久97三级| 亚洲高清久久久| 不卡av电影在线播放| 精品噜噜噜噜久久久久久久久试看 | 国产精品久久久久影院色老大| 亚洲sss视频在线视频| 成人网在线播放| 欧美大黄免费观看| 午夜免费久久看| 日本精品一级二级| 国产精品乱码人人做人人爱| 蜜臀av一区二区在线观看| 一本久久精品一区二区| 国产日产欧美精品一区二区三区| 日韩精品一级二级| 欧美性色黄大片| 欧美国产日韩精品免费观看| 久久99久久久久久久久久久| 欧美三级视频在线| 成人欧美一区二区三区视频网页| 国产精品77777| 久久综合久久综合亚洲| 日本aⅴ免费视频一区二区三区| 色综合色狠狠综合色| 国产精品乱码妇女bbbb| 国产在线看一区| 欧美日韩成人在线| 亚洲一区二区三区在线播放| 成人18视频日本| 国产免费久久精品| 国内精品第一页| 亚洲精品一区二区三区福利 | 一级精品视频在线观看宜春院 | 视频在线观看91| 欧美在线色视频| 亚洲乱码国产乱码精品精的特点 | 国产视频一区二区三区在线观看| 麻豆一区二区三| 亚洲男人天堂一区| 成人av免费在线| 国产精品久久精品日日| 国产jizzjizz一区二区| 久久久九九九九| 成人美女在线观看| 18欧美亚洲精品| 色综合天天天天做夜夜夜夜做| 中文天堂在线一区| 91网站视频在线观看| 亚洲日本在线天堂| 欧美影院一区二区| 舔着乳尖日韩一区| 精品捆绑美女sm三区| 国产老肥熟一区二区三区| 国产精品欧美综合在线| 色综合久久99| 天堂va蜜桃一区二区三区漫画版| 亚洲欧洲99久久| 久久99精品国产麻豆不卡| 日韩女同互慰一区二区| 久草中文综合在线| 国产午夜精品美女毛片视频| 成人黄色av电影| 亚洲国产日韩一区二区| 欧美一区永久视频免费观看| 国产原创一区二区| 国产精品视频免费看| 91国偷自产一区二区三区成为亚洲经典 | 久久婷婷国产综合国色天香 | 一本色道a无线码一区v| 久久99热99| 五月激情丁香一区二区三区| 国产精品乱人伦中文| 日韩欧美精品在线视频| 在线观看日韩国产| www.在线成人|