[RESOLVIDO] - Armazenar dados em um array

Bom dia.
Preciso criar um array chamado notas que armazene os valores lidos do teclado, mas as notas devem ser validadas, ou seja, não pode aceitar notas fora do intervalo [0.0,10.0].

for(int i = 0; i < notas.length;i++){
   do{
       notas[i] = Teclado.leDouble("Digite uma nota: ");                
    } while (notas[i] > 0 || notas[i] < 10);         
}     

porém não está funcionando, alguém saberia me dizer o que estou fazendo de errado?

1 curtida

O erro está na linha

} while (notas[i] > 0 || notas[i] < 10);

Ele precisa realizar a operação enquanto estiver fora do intervalo…

Então ficaria assim:

} while (notas[i] < 0 || notas[i] > 10);
1 curtida

cara, recomendo fazer um IF em cada leitura para não abortar o laço caso leia uma nota inválida.
Lê a nota em uma variável separada, faz o teste com um IF e se válido, salva no vetor, se não dá uma mensagem.

1 curtida

Beleza, pessoal. Resolvido aqui.
Agradeço a atenção dos dois aí.

1 curtida

Não esquece de postar como resolveu.
E marca no tópico como resolvido.
Flw

1 curtida