Problema Analise Combinatoria

De IFSC
Revisão de 15h17min de 22 de junho de 2017 por imported>Fargoud (Criou página com ' →‎**** Programa que calcula o fatorial, arranjo e combinação ******: →‎**********************************************************************: #include <s...')
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
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