Boa tarde.
Estou fazendo um exercício com vetores que me pede para verificar o atleta masculino mais alto só que acontece um problema na hora de comparar o sexo. E fica com a saída:
Digite o tamanho para o vetor: 4
Digite o nome: djsjf
Digite o sexo (M ou F): m
Digite a idade: 22
Digite o peso: 11
Digite a altura: 10
Digite o nome: dfms
Digite o sexo (M ou F): m
Digite a idade: 22
Digite o peso: 22
Digite a altura: 5
Digite o nome: fkdskdfkjsk
Digite o sexo (M ou F): m
Digite a idade: 22
Digite o peso: 12
Digite a altura: 12
Digite o nome: dfkjkd
Digite o sexo (M ou F): f
Digite a idade: 22
Digite o peso: 12
Digite a altura: 800
O atleta masculino mais alto têm: 800.0
Fiz da seguinte forma:
float maisAlto = 0;
for (int a = 0; a < tamanho; a++) {
if (sexo[a].startsWith("M") || sexo[a].startsWith("m")) {
maisAlto = altura[a];
for (int i = a + 1; i < tamanho; i++) {
if (altura[i] > maisAlto) {
maisAlto = altura[i];
}
}
}
}
System.out.println("O atleta masculino mais alto têm: " + maisAlto);
No código eu peço para verificar se o valor digitado na posição x começa com M ou m mas como pode ser observado na saída eu digitei f com valor 800 e indicou como mais alto ignorando o startsWith “M”.
Em que parte eu errei?