Eu desenvolvi uma rotina que mostra dez notas de dez alunos.
mas na hora de eu tirar a media da sala eu não consegui obter os resultados da media. O codigo é esse abaixo.
Digamos que este seu código não está o melhor do planeta Terra, mas aí vai uma dica:
“armazene o somatorio das notas em uma variável e depois divida pelo número de alunos”
Nota: eu acho q consigo deixar este teu código com menos de 10 linhas… ehehe
B
BrossiPJ
hehe concordo … vc podia colocar isso dentro de um for … usar switch , esse emaranhado de if’s não esta muito legal nao… vou dar uma ajeitada aqui e posto pra vc
F
FelipePJ
uma maneira BEM melhor pro seu programa seria por as notas em um array e ao invez de ir fazendo if em aluno por aluno simplesmente ir no indice correto… talvez a intensao do seu programa fosse ler as notas no console ou com um dialogo…
pra resolver a soma seria como o viecili disse…
eu dei uma melhorada no seu codigo:
importjava.text.DecimalFormat;publicclassnota{publicstaticvoidmain(Stringargs[]){intsoma=0;intnotas[]={4,5,7,4,3,6,6,8,3,4};DecimalFormatdf=newDecimalFormat("00");for(inti=0;i<10;i++){System.out.println("Aluno "+df.format(i+1)+" nota: "+notas[i]);soma+=notas[i];}System.out.println("A media foi de:"+((double)soma/notas.length));}}
V
vieciliPJ
bom tah aí:
public class Nota {
public static void main(String[] args) {
int[] notas = {4,5,7,4,3,6,6,8,3,4};
int somatorio = 0;
for (int i = 0; i < notas.length; i++) {
System.out.println("Aluno "+i+" nota: "+notas[i]);
somatorio += notas[i];
}
System.out.println("A média foi de: "+ ( somatorio / (double) notas.length));
}
}
Damn, 11 linhas… eu tinha prometido em 10… hehehe
O que acontece… vc esta utilizando teu codigo como se ele somasse toda vez q vc muda o conteudo da variavel nota… e não é assim… vc tah dando um valor novo… naum somando…
bem na verdade vc pode criar uma variavel de incremnto em todos os if’s e adicionar a sua variavel nota toda vez… entendeu… esse q eu postei tah uma nhaca… depois modifico para ficar mais limpo se der tempo
Sei q o código do Felipe e do Vieceli taum menores e bem mais limpos… mas naum daum o mesmo resultado do seu… tentei ser mais fiel ao q vc esta usando
P
periclesmendoncaPJ
Olá,
cara você quer obter somente uma média né? Se for, você tem que dentro do while controlar somente a soma das notas e fora dele você define a média dividindo o somatório pelo total de alunos que nesse caso é 10 né?!
Eu entendi assim…dá uma olhada ae…