Как я могу сделать комбинаторику в PHP? - PullRequest
2 голосов
/ 29 января 2012

Я не слишком знаком с комбинаторикой, но мне нужно вычислить C(m,n) с помощью PHP.Какой простой способ найти C(m,n)?

Ответы [ 2 ]

1 голос
/ 29 января 2012

Я получил это, используя формулы в Википедии.Это должно работать:

function fact($n){
  $f=$n--;
  while($n>0)
    $f*=$n--;
  return $f;
}


function c($n,$m){
  return fact($n)/(fact($m)*fact($n-$m));
}

echo c(6,3);

Пожалуйста, дайте мне знать, если что-то не так с моей функцией, спасибо!

0 голосов
/ 16 августа 2015

Факториал должен возвращать 1, если результат равен 0.

    function fact($n){
      $f=$n--;
      while($n>0)
        $f*=$n--;
      if($f==0){
        return 1;
      }
      return $f;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...