Fórum Erro no Codigo Ajudem por Favor! #526701
24/07/2015
0
Boa Noite Galera Sou iniciante java e estou treinando um exercicio e estou tendo o seguindo erro, ao roda o programa ele retorna a quantidade de mulher e homens mas o resto da divisao da media da idade so esta dando zero tanto dos homens como das mulher:
o codigo e este:
package Treino;
import javax.swing.JOptionPane;
public class ExemploVideo {
public static void main(String[] args) {
int contadorHomens = 0;
int contadorMulheres = 0;
int somaIdadeHomens = 0;
int somaIdadeMulheres = 0;
for (int i = 0; i < 8; i++){
String sexo = JOptionPane.showInputDialog("Pra o sexo Masculino Digite: M , Feminino Digite: F");
int idade = Integer.parseInt(JOptionPane.showInputDialog("Informe a sua Idade"));
if (sexo.equals ("M")){ //equals compara se e igual.
contadorHomens ++;
somaIdadeHomens += idade;
} else {
contadorMulheres++;
somaIdadeMulheres += idade;
}
} //fim do for
double mediaIdadeHomens = contadorHomens / somaIdadeHomens;
double mediaIdadeMulheres = contadorMulheres / somaIdadeMulheres;
System.out.println("Quantidade de Mulheres: " + contadorHomens);
System.out.println("Quantidade de Homens: " + contadorMulheres);
System.out.println("Media Idade Homens: " + mediaIdadeHomens);
System.out.println("Media Idade Homens: " + mediaIdadeMulheres);
}//fim da metodo
}// fim da classe.
o codigo e este:
package Treino;
import javax.swing.JOptionPane;
public class ExemploVideo {
public static void main(String[] args) {
int contadorHomens = 0;
int contadorMulheres = 0;
int somaIdadeHomens = 0;
int somaIdadeMulheres = 0;
for (int i = 0; i < 8; i++){
String sexo = JOptionPane.showInputDialog("Pra o sexo Masculino Digite: M , Feminino Digite: F");
int idade = Integer.parseInt(JOptionPane.showInputDialog("Informe a sua Idade"));
if (sexo.equals ("M")){ //equals compara se e igual.
contadorHomens ++;
somaIdadeHomens += idade;
} else {
contadorMulheres++;
somaIdadeMulheres += idade;
}
} //fim do for
double mediaIdadeHomens = contadorHomens / somaIdadeHomens;
double mediaIdadeMulheres = contadorMulheres / somaIdadeMulheres;
System.out.println("Quantidade de Mulheres: " + contadorHomens);
System.out.println("Quantidade de Homens: " + contadorMulheres);
System.out.println("Media Idade Homens: " + mediaIdadeHomens);
System.out.println("Media Idade Homens: " + mediaIdadeMulheres);
}//fim da metodo
}// fim da classe.
Edson Venancio
Curtir tópico
+ 0
Responder
Posts
24/07/2015
Felipe
oque vc está fazendo :
double mediaIdadeHomens = contadorHomens / somaIdadeHomens;
double mediaIdadeMulheres = contadorMulheres / somaIdadeMulheres;
Pelo que percebi vc está dividido a quantidade pela soma.
ou seja, se tiver contadorMulheres= 3 com a soma total de suas idades seja somaIdadeMulheres= 36 .
pelo oque vc está fazendo o programa faria isso.
double mediaIdadeMulheres = 3/ 36; o resultado disso seria 0,0833333......
Minha sugestão, n sei se é esse o motivo mas pode ser mais um erro, tente dessa forma, eu n testei é só uma sugestão:
double mediaIdadeHomens = somaIdadeHomens/contadorHomens ;
double mediaIdadeMulheres = somaIdadeMulheres/contadorMulheres ;
double mediaIdadeHomens = contadorHomens / somaIdadeHomens;
double mediaIdadeMulheres = contadorMulheres / somaIdadeMulheres;
Pelo que percebi vc está dividido a quantidade pela soma.
ou seja, se tiver contadorMulheres= 3 com a soma total de suas idades seja somaIdadeMulheres= 36 .
pelo oque vc está fazendo o programa faria isso.
double mediaIdadeMulheres = 3/ 36; o resultado disso seria 0,0833333......
Minha sugestão, n sei se é esse o motivo mas pode ser mais um erro, tente dessa forma, eu n testei é só uma sugestão:
double mediaIdadeHomens = somaIdadeHomens/contadorHomens ;
double mediaIdadeMulheres = somaIdadeMulheres/contadorMulheres ;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)