Combinaison de k valeurs parmi n
Bonjour,
le code suivant permet de calculer la combinaison de k valeurs parmi n. Pour certaines valeurs de n et q, ce code me donne des résultats erronés. J'aime savoir ou résiste le problème. Et si vous pouvez me donner une autre proposition, je serais reconnaissant.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| float MI::combinaison(int n,int q) //la Combinaison de q éléments parmi n
{
float comb;
if(n==q)
{
return 1;
}
else
if(q==1)
{
return n;
}
else
{
comb=(n/q)*combinaison(n-1,q-1);
return comb;
}
} |