Construa um algoritmo que seja capaz de dar a classificação olímpica de 3 países informados. Para cada país é informado o nome, a quantidade de medalhas de ouro, prata e bronze. Considere que cada medalha de ouro tem peso 3, cada prata tem peso 2 e cada bronze, peso 1.
agora fica minha duvida!
eu poderia fazer uma variável que conseguisse os pontos de cada medalhas certo? PM \ ponto medalhas, poderia usar uma media ponderada ae ficaria isso
PM = (ouro3+prata2+bronze*1)/3+2+1
mas e agora como eu fazeria para saber qual País seria o primeiro o segundo ou terceiro?
publicclassClassifica{privatePais[]paises;publicClassifica(){}publicPais[]classificar(Pais[]paises){//aqui vc pode implementar qq algoritimo de ordenação q conheca}}
J
Jadir
por eu não conhecer muito bem a linguagem, eu não entendi muito bem o que você fez ai.
J
Jadir
e acho o que você escreveu aí, não tem muito haver com o que eu quero!
fabiocsilva
O que o markinlelo quis dizer é que o mais importante você já tem, que é o campo que indica quem é o maior e quem é o menor. Então, se você tiver um array de países pode utilizar o algoritmo que desejar(como o Bubble sort) para ordenar
J
Jadir
é que não conheço muito de array mesmo, porque ainda estou no capitulo 3 do livro de Lógica de programação, sendo que array seria o próximo capitulo creio eu, que é onde aprende Estrutura de dados, como manipular elas, vetores, matrizes e registros, por isso acho que não tem sentido eles colocarem um exercício que se diz ser de seleção um pouco mais complexo para parte que estou.
ta ai já com a implementação da ordenação, agora e so trabalhar na classe Main
J
Jadir
cara tudo bem eu agradeço muito pelo que você fez, mas meu objetivo aqui é aprender, e como eu disse no exercício que eu to fazendo ele pede esse algoritmo em estrutura de seleção, o Bubble sort se não me engano tem estrutura de repetição né, não é esse meu objetivo
rdmardegam
Voce pode tambem implementar um comparator para o vetor:
// Classifica em ordem DecrescentepublicPais[]classificar(PaispaisesOrdenados[]){Arrays.sort(paisesOrdenados,newComparator<Pais>(){publicintcompare(PaispaisA,IntegerpaisB){if(paisB.getPontuacao()>paisA.getPontuacao()){return1;}else{return-1;}}});returnpaisesOrdenados;}
claudneto
Jadir, vc precisa analisar todos os países e colocá-los em ordem.
Esse jeito que o Markinlelo postou é o mais simples pra fazer isso. Não tem como vc juntar vários países sem uma lista, array, arraylist, tree…
J
Jadir
revivendo esse topico.
esses dias peguei pra volta a fazer esse algoritmo que eu tinha deixado para traz, acho que esta certo pelo que eu fiz agora!
Agradeço a quem tento aajudar, como sou inexperiente em programação ainda, fiz isso!