int alturaMaior=0;
int alturaMenor=999999999;
int numeroEscMaio=0;
int numeroEscMenor=0;
int mediaGru=0;
int quant=0;
do {
String aux= JOptionPane.showInputDialog("informe o numero de escrição");
numeroEscMaio= Integer.parseInt(aux);
aux = JOptionPane.showInputDialog("informe a altura");
alturaMaior=Integer.parseInt(aux);
mediaGru+=alturaMaior;
quant++;
if (alturaMaior>alturaMaior){
alturaMaior=alturaMaior;
numeroEscMaio=numeroEscMaio;
}
if (alturaMenor<alturaMenor){
alturaMenor=alturaMenor;
numeroEscMenor=numeroEscMaio;
}
} while (numeroEscMaio !=0 ||numeroEscMenor!=0);
JOptionPane.showMessageDialog(null,"A altura maior é :"+alturaMaior +"e seu numero de incrição é "+numeroEscMaio);
JOptionPane.showMessageDialog(null,"A altura menor é :"+alturaMenor+" e seu numero de incrição é "+numeroEscMenor);
JOptionPane.showMessageDialog(null,"a altura media do grupo é "+(mediaGru/quant) );
}
queria que leia n pares de valores, sendo o primeiro valor
o número de inscrição de um atleta por exemplo o segundo a
altura (em cm) do atleta e informe:
a) o número de inscrição e a altura do atleta mais alto;
b) o número de inscrição e a altura do atleta mais baixo;
c) a altura média do grupo de atletas.
A leitura deveria ser finalizada quando o numero de escrição era zero ,
desde ja obrigado
Adicione a seguinte instrução na linha 12:
if(numeroEscMaio==0) break;
O break quebra a execução do laço de repetição. Esta não é a única maneira de resolver esse impasse,mas, por hora, creio que essa seja a mais simples.
if (alturaMaior>alturaMaior){
alturaMaior=alturaMaior;
???
e q situação, x seria maior x?
quando o usuario informar um numero maior ja registrado até o momento …
porque é o seguinte , quero que o programa informe o atleta maior e o atleta menor , e a saida
deve constar o numero de incrição do maior e o numero de inscrição do atleta menor .
e a media das alturas dos atletas
dioni deivid dors,
Percebe que a comparação abaixo retornará sempre falso, não importa o conteúdo da variável alturaMaior?
if (alturaMaior>alturaMaior){
Então o programa nunca vai entrar nesse if. alturaMaior é sempre igual a alturaMaior, nunca será maior.
Você precisa de uma terceira variável para guardar a altura digitada no showInputDialog. Por exemplo, altura.
Precisa também de outra variável para o número da inscrição.
String aux= JOptionPane.showInputDialog("informe o numero de inscrição");
numeroInsc= Integer.parseInt(aux);
aux = JOptionPane.showInputDialog("informe a altura");
altura=Integer.parseInt(aux);
if (altura>alturaMaior){
alturaMaior=altura;
numeroInscMaior=numeroInsc;
}
if (altura<alturaMenor){
alturaMenor=altura;
numeroInscMenor=numeroInsc;
}
PS:
Se você aprender a fazer “chinês” para os programas, faça para este caso que você vai entender.
valeu cara , funcionou , tinha pensado nisso que vc falou quando começou a apresentar erro , mas não di bola sei la.
e entendi o que vc quis dizer, valeu ,mas a minha media ta dando valor errado , não sei porque
acertei ja
ta funcionando como esperado
Use a altura para calcular a média, e não a alturaMaior.
PS. Ok, tá funcionando então.
foi isso que fiz , blz valeu a todos , mas como eu coloco resolvido no post ? me fala passo a passo que ja procurei em tudo quanto é lugar
Seguinte: você vai na primeira mensagem do tópico que você criou, clica em “Editar” e altera o assunto. Escreve [RESOLVIDO] à mão mesmo.