viernes, 16 de septiembre de 2011

Combinatoria

Combinatoria sin repetición:



n = total de elementos
p = número de elementos a extraer

El algoritmo simula esta formula


#include "stdafx.h"
#include "iostream"
#include "conio.h"
using namespace std;

double combinatoria(float n,float np, float p)
{
if(np==0)np=1;
if(p==0)p=1;

if(n==1)
return 1;
else
return combinatoria(n-1,np-1,p-1) * (n/(np*p));
}

void main()
{
double n,p;

do{
cout<<"Total de objetos (mas de 3): ";cin>>n;
}while(n<3);

do{
cout<<endl<<"Cantidad que quiere extraer: ";cin>>p;
}while(p>n || p<=0);

cout<<endl<<"Formas de extraccion: "<<combinatoria(n,n-p,p);

_getch();
}

No hay comentarios:

Publicar un comentario