Escreva um algoritmo que receba o nome e o número de votos de três candidatos da eleição para presidente. Ele também deve apresentar na tela o nome do candidato que venceu a eleição. Considere que não é possível haver empate, portanto, que os respectivos valores de entrada sejam diferentes.
Para demonstrar o funcionamento do algoritmo, veja o resultado da execução a seguir. As informações utilizadas como entrada são apenas ilustrativas:
Nome do 1. candidato: Lucas Lima
Número de votos do 1. candidato: 500
Nome do 2. candidato: Carlos Francisco
Número de votos do 2. candidato: 380
Nome do 3. candidato: Alfredo Santos
Número de votos do 3. candidato: 630
O candidato Alfredo Santos venceu a eleição com 630 votos.
Observação: Os nomes e números não são fixos. A cada nova execução do algoritmo, o usuário deverá digitar novos nomes e valores.
Soluções para a tarefa
Resposta:
Algoritmo "eleição"
Var
c1, c2, c3: caractere
v1, v2, v3: inteiro
Inicio
//Primeiro candidato
escreval("Digite o nome do primeiro candidato: ")
leia(c1)
escreval("Digite quantos votos o primeiro candidato recebeu: ")
leia(v1)
//Segundo candidato
escreval("Digite o nome do segundo candidato: ")
leia(c2)
escreval("Digite quantos votos o segundo candidato recebeu: ")
leia(v2)
//Checagem de votos iguais para v2
enquanto (v2 = v1) faca
escreval("O número de votos não pode ser o mesmo do que o outro candidato.")
escreval("Digite quantos votos o segundo candidato recebeu: ")
leia(v2)
fimenquanto
//Segundo candidato
escreval("Digite o nome do terceiro candidato: ")
leia(c3)
escreval("Digite quantos votos o terceiro candidato recebeu: ")
leia(v3)
//Checagem de votos iguais para v3
enquanto (v3 = v1) ou (v3 = v2) FACA
escreval("O número de votos não pode ser o mesmo do que o outro candidato.")
escreval("Digite quantos votos o terceiro candidato recebeu: ")
leia(v3)
fimenquanto
//Resultado da eleição
escreval("Nome do 1. candidato: ", c1)
escreval("Número de votos do 1. candidato: ", v1)
escreval("Nome do 2. candidato: ", c2)
escreval("Número de votos do 2. candidato: ", v2)
escreval("Nome do 3. candidato: ", c3)
escreval("Número de votos do 3. candidato: ", v3)
//Vencedor da eleição
se(v1 > v2) e (v1 > v3) entao
escreval("O candidato ", c1, " venceu a eleição com ", v1, " votos.")
senao
se(v2 > v1) e (v2 > v3) entao
escreval("O candidato ", c2, " venceu a eleição com ", v2, " votos.")
senao
se(v3 > v1) ou (v3 > v2) entao
escreval("O candidato ", c3, " venceu a eleição com ", v3, " votos.")
FIMSE
FIMSE
FIMSE
Fimalgoritmo
Explicação:
É criado as variáveis para o algoritmo sendo que c1, c2 e c3 representa os nomes dos candidatos e v1, v2 e v3 a quantidade de votos de cada candidato.
É solicitado ao usuário o nome e a quantidade de votos de cada candidato e é armazenado nas suas respectivas variáveis.
A partir do segundo candidato é criado um loop para verificar se a quantidade dos votos são iguais a de um outro candidato.
É imprimido na tela os nomes dos candidatos e a quantidade de votos de cada um.
E por ultimo é usado uma estrutura condicional para checar qual candidato tem mais votos e é impresso na tela do usuário.
Espero ter ajudado.