terça-feira, 28 de setembro de 2010

Exercicio 16 capitulo 3

Escreva um algoritmo que leia os nomes dos três candidatos ao Senado (para uma vaga) com
suas respectivas votações. O algoritmo deve escrever o nome do candidato mais votado. Por
exemplo,
Maior votação: João da Silva
No caso de haver empate entre dois (os mais votados) ou entre os três candidatos, devem ser
escritos os nomes desses candidatos. Por exemplo,
Maior votação: João da Silva, Maria do Socorro
algoritmo "2.16"
// Função :
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações 
var
   nomeCandidato1,nomeCandidato2,nomeCandidato3:literal
   votacaoCand1,votacaoCand2,votacaoCand3:inteiro
inicio
   escreval("Informe o nome e a votacao do candidato 1:")
   escreva("Nome: ")
   leia(nomeCandidato1)
   escreva("Votacao: ")
   leia(votacaoCand1)

   escreval("Informe o nome e a votacao do candidato 2:")
   escreva("Nome: ")
   leia(nomeCandidato2)
   escreva("Votacao: ")
   leia(votacaoCand2)
   
   escreval("Informe o nome e a votacao do candidato 3:")
   escreva("Nome: ")
   leia(nomeCandidato3)
   escreva("Votacao: ")
   leia(votacaoCand3)
   
   escreval
   
   //todo mundo ganhou...
   se ((votacaoCand1 = votacaoCand2) e (votacaoCand2 = votacaoCand3)) entao
      escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato2,", ",nomeCandidato3)
   senao
      //se o candidato 1 é igual ao candidato 2, estao empatados. Se os dois forem maior que o 3, sao os vencedores
      se((votacaoCand1=votacaoCand2) e (votacaoCand1>votacaoCand3)) entao
         escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato2)
      senao
         //se o candidato 1 é igual ao candidato 3, estao empatados. Se os dois forem maior que o 2, sao os vencedores.
         se ((votacaoCand1=votacaoCand3) e (votacaoCand1>votacaoCand2)) entao
            escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato3)
         senao
            //se o candidato 2 é igual ao candidato 3, estao empatados. Se os dois forem maior que o 1, sao os vencedores.
            se ((votacaoCand2=votacaoCand3) e (votacaoCand2>votacaoCand1)) entao
               escreva("Maior votacao: ",nomeCandidato2,", ",nomeCandidato3)
            senao
               //Nao. Nao temos empate, vamos ver quem foi o vencedor.
               se ((votacaoCand1>votacaoCand2) e (votacaoCand1>votacaoCand3)) entao
                  escreva("Maior votacao: ",nomeCandidato1)
               senao
                  se ((votacaoCand2>votacaoCand1) e (votacaoCand2>votacaoCand3)) entao
                     escreva("Maior votacao: ",nomeCandidato2)
                  senao
                     //Nem precisa testar agora né? Pelas regras da probabilidade o candidato 3 venceu
                     escreva("Maior votacao: ",nomeCandidato3)
                  fimse
               fimse
            fimse
         fimse
      fimse
   fimse
fimalgoritmo

Nenhum comentário:

Postar um comentário