ei pessoal poderiam ver o que há de errado com a logica de meu programa?
aí vai a questão:
Crie um programa que leia um indeterminado numero de alunos e para cada aluno leia:
a- nome;
b- idade;
c- as 8 notas do semestre;
após a leitura dos dados de cada aluno deve ser calculada a media das 8 notas. ao final da leitura de todos os alunos, devera ser calculada a media geral da turma, devera ser mostrado o nome do aluno que conseguiu a media mais alta da turma com a respectiva media e o numero de alunos que conseguiram media acima de 7,5. o sentinela do while é (nome = “”);
aqui vai o meu código não deem risada!!! heehe
[code]import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class MediaTurma {
public static void main(String[] args) throws IOException {
BufferedReader teclado = new BufferedReader(new InputStreamReader(
System.in));
// variaveis
String strNome = null, strIdade, strNota, nomeMelhorMedia = null;
float notaAtual = 0, mediaNotasAluno = 0, contadorAlunos = 0,
melhorMedia = 0, contAlunosMedia75 = 0, somaNotasAluno = 0, somaMediasTurma = 0;
// inicio do laço
System.out.println("informe o nome ( ou tecle enter para sair): ");
strNome = teclado.readLine();
while (!strNome.equals("")) {
// pede idade
System.out.println("digite sua idade: ");
strIdade = teclado.readLine();
// pede as 8 notas
for (int i = 0; i < 8; i++) {
// pede nota
System.out.println("digite a nota: ");
strNota = teclado.readLine();
notaAtual = Float.parseFloat(strNota);
// adiciona as notas para o calculador de media
somaNotasAluno = somaNotasAluno + notaAtual;
}
// media das notas
mediaNotasAluno = (somaNotasAluno / 8);
// adiciona a media no calculador de medias
somaMediasTurma = somaMediasTurma + mediaNotasAluno;
// verifica se é a melhor media até agora
if (mediaNotasAluno > melhorMedia) {
melhorMedia = mediaNotasAluno;
nomeMelhorMedia = strNome;
}
// verifica se a media está acima de 7,5
if (mediaNotasAluno >= 7.5) {
// incrementa o contador de notas acima de 7,5
contAlunosMedia75++;
}
// incrementa o contador de alunos
contadorAlunos++;
// pede nome
System.out.println("informe o nome ( ou tecle enter para sair): ");
strNome = teclado.readLine();
}
System.out.println("melhor media: " + melhorMedia + " com o aluno: "
+ nomeMelhorMedia);
System.out
.println("alunos que conseguiram media maior ou igual a 7.5: "
+ contAlunosMedia75);
}
}
[/code]
se tiverem tempo por favor deem uma olhada…
grato desde já
Abraço