Problema Analise Combinatoria: mudanças entre as edições

De IFSC
Ir para navegação Ir para pesquisar
imported>Fargoud
 
imported>Fargoud
Sem resumo de edição
 
(Uma revisão intermediária pelo mesmo usuário não está sendo mostrada)
Linha 1: Linha 1:
  /*****    Programa que calcula o fatorial, arranjo e combinação            *******/
  /*****    Programa que calcula o fatorial, arranjo   *******/
  /************************************************************************/
  /*********   e combinação      *****************************/
  #include <stdio.h>
  #include <stdio.h>
  #include <conio.h>
  #include <conio.h>
  double fatorial(int numero)
  double fatorial(int numero)
  { int j;
  { int j;
Linha 19: Linha 18:
   }
   }


  void main(void)
void main(void)
  { int n, p;
{int n, p;
    char opcao = 'f';
  char opcao = 'f';
    printf("*** Programa de Analise Combinatoria ***\n\n");
  printf("*** Programa de Analise Combinatoria ***\n\n");
    for(;opcao != 's' && opcao != 'S';)
  for(;opcao != 's' && opcao != 'S';)
    {   printf("\n\nEscolha 'f' para fatorial; 'a' para arranjo; 'c' para combinacao e 's', para sair :>    ");
  { printf("\n\nEscolha 'f' para fatorial; 'a' para arranjo; 'c' para combinacao e 's', para sair :>    ");
        opcao = getche();
    opcao = getche();
        switch(opcao)
    switch(opcao)
        {
    {
          case 'f':
    case 'f':
          case 'F': printf("\nEntre com o valor de n para calculo do fatorial :> ");
    case 'F': printf("\nEntre com o valor de n para calculo do fatorial :> ");
                    scanf("%d", &n);
              scanf("%d", &n);
                    printf("\n\nO FATORIAL de %d \202: %.2f ", n, fatorial(n));
              printf("\n\nO FATORIAL de %d \202: %.2f ", n, fatorial(n));
                    break;
              break;
            case 'a':
    case 'a':
            case 'A': printf("\nEntre com os valores de n  e p para calculo do arranjo :> ");
    case 'A': printf("\nEntre com os valores de n  e p para calculo do arranjo :> ");
                    scanf("%d %d", &n, &p);
              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));
              printf("\n\nO ARRANJO de %d tomados %d a  %d  \202: %.2f ", n, p, p, fatorial(n)/fatorial(n-p));
                    break;
              break;
            case 'c':
    case 'c':
            case 'C':  printf("\nEntre com os valores de n e p para calculo da combinacao :> ");
    case 'C':  printf("\nEntre com os valores de n e p para calculo da combinacao :> ");
                    scanf("%d %d", &n, &p);
                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)) );
                printf("\n\nA COMBINACAO de %d tomados %d a %d \202: %.2f ", n, p, p, fatorial(n)/(fatorial(p)*fatorial(n-p)) );
                    break;
                break;
            case 's':
    case 's':
            case 'S':
    case 'S':
                    printf("\nSaindo....\n\n");
                printf("\nSaindo....\n\n");
                    break;
                break;
           } //fim switch
           } //fim switch
       } //fim for
       } //fim for
   }  //fim main
   }  //fim main

Edição atual tal como às 15h20min de 22 de junho de 2017

/*****    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