combi.txt

来自「计算组合数公式C(ele,sel)=A(ele,sel)/sel! 不用递归实」· 文本 代码 · 共 1,221 行 · 第 1/2 页

TXT
1,221
字号
/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

/** 
* 计算组合数公式C(ele,sel)=A(ele,sel)/sel!
* @fn combi
* @param INT elements, INT selections
* @return double 
* @version 1.0
* @author 廖月旺(liao.yuewang@zte.com.cn or liaoyuewang@163.com)
* @date 2006-6-14
*/
double combi(INT elements, INT selections )
{
	INT i;
	double answer;
	INT ele;
	double p = 1;

	answer = elements;
	ele = elements;

       /*计算排列数A(ele,sel)=ele*(ele-1)*...*(ele-sel+1) */
      /*计算selections 的阶乘*/   
	for(i = 1;i < selections; i ++)
	{
		answer = answer *(--ele);
		p*=i;
	}
	p *= selections;

      /*得到组合数*/
      answer/=p;
/*
	  printf("answer=%E\n",answer);
*/
      return answer;		
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?