Por favor nem sei por onde começar
Escreva um programa que faça a apuração de uma eleição com 1000 candidatos. Cada eleitor deverá digitar apenas o número do seu candidato (1 a 1000). Para encerrar a eleição deve ser digitado -1 para o voto. Após o encerramento da eleição o programa deve imprimir o número e a quantidade de votos do candidato vencedor.
Alguem me ajuda
A
7 Respostas
Você conseguiu fazer a entrada dos dados?
A
na vdd n sei nem por onde começar estou muito perdida
I
Em qual linguagem?
Oi @adrienne, porque você não usa essa solução?
Eu entendo que 1000 é um número muito grande para usar um Case, Mas você pode adaptar e usar um Array ou uma lista e usar os índices para corresponder com o número do candidato!
/t/me-ajudem-por-favor/401840?
Mas você que em Java ou javascript!
A
java
Eu começaria pedindo pro usuário digitar o número de seu candidato.
I
Se realmente deseja aprender, recomendo que estude, já que disse estar perdida. Algumas sugestões:
1 - <a href="https://www.youtube.com/watch?v=8mei6uVttho&list=PLHz_AreHm4dmSj0MHol_aoNYCSGFqvfXV">Curso em Vídeo - Lógica de Programação</a>;
2 - <a href="https://www.youtube.com/watch?v=sTX0UEplF54&list=PLHz_AreHm4dkI2ZdjTwZA4mPMxWTfNSpR">Curso em Vídeo - Java Para Iniciantes</a>;
4 - <a href="https://docs.oracle.com/javase/tutorial/">Java Tutorials</a>;
5 - <a href="https://docs.oracle.com/en/java/javase/14/docs/api/index.html">Docs Oracle - Documentação do Java</a>.
Exemplo de resolução:
import java.util.Scanner;
public class Eleicao {
public static void main(String[] args){
final short MAX = 1000;
short voto = -1;
short maiorVotacao = 0;
short contagem = 0;
short candidato = 1;
short[] candidatos = new short[MAX];
System.out.println("\n= Eleções 2020 = ");
Scanner leitor = new Scanner(System.in);
do{
System.out.print("Informe o seu voto. Canditado: ");
voto = leitor.nextShort();
if(voto > 0 && voto < MAX){
//candidatos[voto] = candidatos[voto] + 1
candidatos[voto] += 1; //É um atalho para a atribuição acima
}
}while(voto != -1 && contagem < MAX);
/*
* Verifica a maior votação
*/
maiorVotacao = candidatos[1]; //Arbitrariamente indica que o candidato 1 venceu
for(short i = 1; i < candidatos.length; i++){
if(candidatos[i] > maiorVotacao){ //Verifica que é verdade que o canditado 1 venceu
maiorVotacao = candidatos[i]; //Se for falso, a maior votação é a do candidato i
candidato = i; //Armazena o índice do candidato
}
}
/*
* Verifica quantos cadidatos atingiram a maior votação
*/
for(short i = 1; i < candidatos.length; i++){
if(candidatos[i] == maiorVotacao) //Verifica os cadidatos que atingiram a maior votação
contagem++; //Conta quantos canditados atingiram a maior votação
}
/*Se somente um canditato atingiu a maior pontuação e ela for maior que zero, mostra as
informações*/
if(contagem == 1 && maiorVotacao != 0)
System.out.println("\nO candidato " + candidato + " foi eleito com " + maiorVotacao
+ " votos.");
else if(contagem > 2)
System.out.println("\nNão houve vencedores!");
else
System.out.println("\nA eleição terá segundo turno!");
}
}
Rodando…
Criado 1 de maio de 2020
Ultima resposta 2 de mai. de 2020
Respostas 7
Participantes 5
Alura Git Flow: entenda o que é, como e quando utilizar Entenda o que é Git Flow, como funciona seu fluxo com branches como Master, Develop, Feature, Release e Hotfix, além de vantagens e desvantagens.
Casa do Codigo Ontologias e Web Semantica: Do conceito a aplicacao Por Ivam Galvao Filho — Casa do Codigo
