Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda!


Gabriel Sales

Pergunta

Boa Noiite pessoal, sou novo aqui no forum e na área de programação também, tem mais ou menos uns 2 meses que comecei a estudar C, e estou com algumas dificuldades.

Gostaria que me ajudassem nesse código, estou tendo dificuldade na hora da confirmação do voto, não consigo fazer para que o voto não seja contabilizado.

Mee ajudeem por favor!

Desculpem ai qualquer coisa se postei no local errado...

----------------------------------------------------------------------------------------------------------------------------

/*
 Sintese
   Objetivo: Fazer uma urna, aonde a letra B corresponde ao Pelé e a letra A Maradona
             letra X voto em branco e qualquer outro valor sera considerado nulo. O programa 
             sempre deverá exigir a confirmação ou não do voto. Ao final da eleição apresentar
             um relatório com  a votação de cada candidato, a quantidade de votos em branco e nulo
             além do candidato vencedor ou empate.

   Entrada : Letra de acordo com o candidato, ou qualquer outro valor.

   Saida   : Relatório com a votacação de cada candidato, votos nulos e brancos,
             candidato vencedor ou empate.

*/

#include <stdio.h>
#include <conio.c>
#include <ctype.h>

int main(void)
{
// Declaracoes
char opcao, resposta, confirmacao;
int contadorM=0, contadorP=0, contadorN=0, contadorB=0;

// Instrucoes
   system ("TITLE aula3_Exer6");
   do
   {      
          clrscr ();
          printf ("\nEscolha seu candidato ");
          printf ("\n\nA - Maradona.\n");
          printf ("B - Pele.\n");
          printf ("X - Branco.\n");
          printf ("Qualquer outro voto sera nulo.\n");
          opcao = toupper(getche());
          if (opcao == 'A')
          {   
              do
              {
                  clrscr ();
                  printf ("\n\nCandidato escolhido: MARADONA!"); 
                  printf ("\n\nConfirma voto S - Sim / N - não?");
                  confirmacao = toupper (getche());
                  contadorM++;
              }while(confirmacao != 'S');
          }
          else if (opcao == 'B')
          {
               do
               {
                   clrscr ();
                   printf ("\nCandidato escolhido: PELE !");
                   printf ("\n\nConfirma voto S - Sim / N - não?");
                   confirmacao = toupper (getche());
                   contadorP ++;
               }while (confirmacao != 'S');
          }
          else if (opcao == 'X')
          {
              do
              {
                  clrscr ();
                  printf ("\nVoto em BRANCO!");
                  printf ("\n\nConfirma voto S - Sim / N - não?");
                  confirmacao = toupper (getche());
                  contadorB ++;
              }while (confirmacao != 'S');
          }
          else
          {
              do
              {
                   clrscr ();
                   printf ("Voto NULO!");
                   printf ("\n\nConfirma voto S - Sim / N - não?");
                   confirmacao = toupper (getche());
                   contadorN ++;
              }while (confirmacao != 'S');
          }        
          clrscr ();
          printf ("\n\nDeseja votar novamente ? S - Sim / N - não");
          resposta = toupper (getche());
   }while (resposta == 'S');
   clrscr ();
   if (contadorM == contadorP)
      printf ("\n\n\nOs dois candidatos emparam com %d voto(s) cada.\n\n\n", contadorP);
   else if (contadorM > contadorP)
       printf ("\n\n\nMaradona venceu com %d voto(s\n\n\n)", contadorM);
   else
        printf ("\n\n\nPele veceu com %d voto(s)\n\n\n", contadorP);

   printf ("\nMARADONA recebeu %d voto(s)!", contadorM);
   printf ("\n\nPELE recebeu %d voto(s)!", contadorP);
   printf ("\n\n%d voto(s) em BRANCO!", contadorB);
   printf ("\n\n%d voto(s) NULO(S)", contadorN);
   

             
             



  getch();
  return 0;
}

Editado por kuroi
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Olá Gabriel,

Vou colar um trecho do seu código com a correção que você deve fazer.

1) Você só pode incrementar o contador se "confirmacao" for igual a 'S'

2) O ideal para confirmacao é que só sejam consideradas as teclas 'S' e 'N'

Tem algumas na sua lógica que podem ser otimizada pra evitar redundancia e economizar memória.

Qualquer dúvida posta ai.

Abs


do
{
clrscr ();
printf ("\n\nCandidato escolhido: MARADONA!");
printf ("\n\nConfirma voto S - Sim / N - não?");
confirmacao = toupper (getche());
if (confirmacao == 'S')
contadorM++;
}while(confirmacao != 'S' && confirmacao != 'N');
[/codebox]

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...