高人,把C(n,m)的计算公式写一下!!!n在上,m在下!!!

解决方案 »

  1.   

    var i,y,x:integer;
    begin
    x:=1;
    for I:=n downto m do
    x:=x*(I-1)
    for I:=0 to m do
    y:=y*i;
    result:=x/y;
    end;
      

  2.   

    上面错了,应该是:
    m(m-1)...(m-n+1)/n!
      

  3.   

    var i,y,x:integer;
    begin
    x:=1;
    for I:=n downto m do
    x:=x*(I-1)
    for I:=1 to m do
    y:=y*i;
    result:=x/y;
    end;
      

  4.   

    或者是:
    m!/(n!(m-n)!)用阶乘算法就可以了。
      

  5.   

    C(n, m) 
    = P(n, m) / P(m, m)
    = n * (n-1) * ... * (n-m+1) / m!
      

  6.   

    To goomoo(古木) 好像因该是m(m-1)...(m-n+1)/(m-n)!!!To idilent(说错了别怪我) 你的公式好像也不正确!!!不过谢谢两位!!!
      

  7.   

    //////m(m-1)...(m-n+1)/n!
    function Combination(n,m: Word): Double;
    var
      i: Word;
      x,y: Double;
    begin
      Result := 0;
      if n > m then Exit;
      x := 1;
      y := 1;
      for i := 1 to n do
      begin
        x := x*(m-i+1);
        y := y*i;
      end;
      Result := x/y;
    end;