Nume Tutorial:Calculare combinari in PHP
Descriere:Pentru inceput sa ne amintim ce sunt combinarile. Din definite stim asa: Notam combinari de n luate cate k numarul tuturor submultimilor formate din k elemente luate din n.
Download:Nu necesita
Autor:Anonim
Sursa (Link-ul oficial):
Tutorialul:
In primul rand calculam n! (n factorial). Ce reprezinta operatia factorial?! Va dati seama si singuri spunandu-va doar ca n! = 1*2*3*4*...*n (ex: 3!=1*2*3=6).
Pentru a calcula factorialul unui numar folosim urmatorul script:
Code: Select all
<?php
$n = 10; // numarul al carui factorial il calculam
$nf = 1; // dam mai intai valoarea 1
for ($a=1; $a<=$n; $a++) {
$nf = $nf * $a;
}
echo $nf; // afisam rezultatul
?>
Iata si scriptul complet
Code: Select all
<?php
$n = 49;
$k = 6;
$nf = 1;
for ($a=1; $a<=$n; $a++) {
$nf = $nf * $a;
}
$kf = 1;
for ($b=1; $b<=$k; $b++) {
$kf = $kf * $b;
}
$nk = $n - $k;
$nkf = 1;
for ($c=1; $c<=$nk; $c++) {
$nkf = $nkf * $c;
}
$rez = $nf / ($kf * $nkf);
echo $rez;
?>
Exista o problema in calcularea combinarilor cu numere mari.
De exemplu C10097(C indice 100 la puterea 97). Este clar ca nu poti calcula de mana factorialul lui 100 decat daca folosesti un program de calcul insa uneori nici acestea nu arata rezultatele corecte in cazul unor numere uriase. Exista insa o metoda mai usoara pentru astfel de situatii cu numere mari pe care o puteti studia in exemplul urmator:
Părere buna