Problema Analise Combinatoria
Ir para navegação
Ir para pesquisar
/***** Programa que calcula o fatorial, arranjo *******/
/********* e combinação *****************************/
#include <stdio.h>
#include <conio.h>
double fatorial(int numero)
{ int j;
double fat=1;
if(numero== 0 || numero == 1)
return fat;
else
{ j = numero;
while(j)
{ fat *= j;
j--;
}
return fat;
}
}
void main(void)
{int n, p;
char opcao = 'f';
printf("*** Programa de Analise Combinatoria ***\n\n");
for(;opcao != 's' && opcao != 'S';)
{ printf("\n\nEscolha 'f' para fatorial; 'a' para arranjo; 'c' para combinacao e 's', para sair :> ");
opcao = getche();
switch(opcao)
{
case 'f':
case 'F': printf("\nEntre com o valor de n para calculo do fatorial :> ");
scanf("%d", &n);
printf("\n\nO FATORIAL de %d \202: %.2f ", n, fatorial(n));
break;
case 'a':
case 'A': printf("\nEntre com os valores de n e p para calculo do arranjo :> ");
scanf("%d %d", &n, &p);
printf("\n\nO ARRANJO de %d tomados %d a %d \202: %.2f ", n, p, p, fatorial(n)/fatorial(n-p));
break;
case 'c':
case 'C': printf("\nEntre com os valores de n e p para calculo da combinacao :> ");
scanf("%d %d", &n, &p);
printf("\n\nA COMBINACAO de %d tomados %d a %d \202: %.2f ", n, p, p, fatorial(n)/(fatorial(p)*fatorial(n-p)) );
break;
case 's':
case 'S':
printf("\nSaindo....\n\n");
break;
} //fim switch
} //fim for
} //fim main