MikeM 0 Denunciar post Postado Novembro 20, 2014 Oi. Preciso fazer um codigo que leia a nota das 5 notas digitadas e dê a média, que é 6, e diga caso >=6 = aprovado, se não está em Recuperação. Caso ele fique em Recuperação, a menor das 5 notas será substituido pela nota da Recuperação, e após isso a divisão devera ser feita novamente para ver se o aluno está ou não aprovado. n1+n2+n3+n4+n5 / 5 Caso for maior ou igual a 6 = aprovado, beleza.. Caso contrario: Aluno em RP Ai vai aparecer uma mensagem dizendo para digitar a nota da prova de Recuperação do aluno, ficando assim: n1+n2+n3(imagine que essa foi a menor nota)+n4+n5 / 5 Caso a media for = ou maior q 6 = aprovado caso contrario = ALUNO REPROVADO Fiz esse codigo, que ta incompleto devido a minha debilitação devido ao trabalho e a falta de tempo: import java.util.Scanner; import java.text.DecimalFormat; public class Avaliacao01 { public static void main(String[] args); { Scanner nota = new Scanner(System.in); DecimalFormat media = new DecimalFormat(“0.00); float n1, n2, n3, n4, n5, media, RPal1, RPal2; float opc1=Sim; float opc2=Nao; String aluno1 = Mike; String aluno2 = Joao; System.out.println("Digite a nota da 1ª avaliação do aluno: "+aluno1); n1 = nota.nextFloat(); System.out.println("Digite a nota da 2ª avaliação do aluno: "+aluno1); n2 = nota.nextFloat(); System.out.println("Digite a nota da 3ª avaliação do aluno: "+aluno1); n3 = nota.nextFloat(); System.out.println("Digite a nota da 4ª avaliação do aluno: "+aluno1); n4 = nota.nextFloat(); System.out.println("Digite a nota da 5ª avaliação do aluno: "+aluno1); n5 = nota.nextFloat(); media = (n1+n2+n3+n4+n5)/5; System.out.println(ajuste.format(media)); if (media >=6) { System.out.println("A média do aluno foi de: "+media". Ele está aprovado!"); } else { System.out.println("A média do aluno foi de: "+media". O mínimo para ser aprovado é 6. O aluno está em recuperação"); } RPal1 = getValue(n1, n2, n3, n4, n5); System.out.println("Digite a nota da prova de recuperação do aluno: "+aluno1); RPal1=mf.nextFloat(); mf=(n1 < n2)/5 { ....... Continuar amanhã System.out.println("Deseja continuar e ajustar a nota da prova de recuperação do aluno "+aluno1 "? (opc1=S/opc2=N)"); if (opc1=Sim) { RPal1 = Podem me ajudar a corrigir os erros e dizer onde errei? Sei que tem muitos erros e algumas coisas incompletas. É que cheguei 00:00 em casa (faço 2 cursos e estudo) e o sor deu esse exercicio para amanha. Abç Compartilhar este post Link para o post Compartilhar em outros sites
reebr 94 Denunciar post Postado Novembro 21, 2014 Não tive tempo pra testar. import java.util.Scanner; public class Main { private final Scanner input; public Main() { this.input = new Scanner(System.in); init(); } private boolean isAprovado(double notas[]){ double media = 0; for(int i = 0; i < notas.length; i++) media += notas[i]; return media / notas.length >= 6; } private void mudaMenorNota(double arrayNotas[], double nota){ double menor = arrayNotas[0]; int indexMenor = 0; for(int i = 1; i < arrayNotas.length; i++) if(arrayNotas[i] < menor) indexMenor = i; arrayNotas[indexMenor] = nota; } private void init(){ double notas[] = new double[5]; for(int i = 0; i < notas.length;i++){ System.out.println((i+1) + " nota: "); notas[i] = input.nextDouble(); } if(isAprovado(notas)) System.out.println("Aluno aprovado."); else { System.out.println("Aluno Reprovado. Nota de recuperação do aluno: "); double notaRecuperacao = input.nextDouble(); mudaMenorNota(notas, notaRecuperacao); if(isAprovado(notas)) System.out.println("Aluno aprovado com a nota de recuperação."); else System.out.println("Reprovado"); } } public static void main(String[] args) { new Main(); } } Compartilhar este post Link para o post Compartilhar em outros sites
MikeM 0 Denunciar post Postado Novembro 22, 2014 Refiz o meu código: import java.util.Scanner; import java.text.DecimalFormat; public class Media { public static void main(String[] args) { Scanner ler=new Scanner(System.in); DecimalFormat dec = new DecimalFormat("0.00"); float n1, n2, n3, n4, n5, media, mf; int opc1 = 1; int opc2 = 2; String aluno1 = "Mike"; System.out.println("Digite a nota da 1ª avaliação do aluno: "+aluno1); n1 = ler.nextFloat(); System.out.println("Digite a nota da 2ª avaliação do aluno: "+aluno1); n2 = ler.nextFloat(); System.out.println("Digite a nota da 3ª avaliação do aluno: "+aluno1); n3 = ler.nextFloat(); System.out.println("Digite a nota da 4ª avaliação do aluno: "+aluno1); n4 = ler.nextFloat(); System.out.println("Digite a nota da 5ª avaliação do aluno: "+aluno1); n5 = ler.nextFloat(); media = (n1+n2+n3+n4+n5)/5; System.out.println(dec.format(media)); if (media >=6) { System.out.println("Aluno aprovado!!! A média mínima é 6. A média do aluno é: "+media); } else { System.out.println("Aluno em recuperação!!! A média mínima é 6. A média do aluno é: "+media); System.out.println("\n\n Deseja continuar e fazer a média contando com a nota da recuperação do aluno? (S=1/N=2)"); opc1 = ler.nextInt(); if (opc1==1) { System.out.println("Digite a nota da prova de recuperação do aluno:"); //Continuar... } else { System.out.println("\n\n Tchau. Até mais! "); } } } } Falta: Completar a parte da recuperação, fazendo ela substituir a menor nota entre as 5 avaliações, e depois dividir todas as 5 avaliações por 5, e caso a média for =>6 = aprovado, caso contrário = reprovado. Após isso o código precisa perguntar se o usuário quer continuar a setar a nota dos outros alunos, que no caso seria o aluno 2,3,4,5 e 6. Quero também que de para "selecionar" um aluno para setar a nota dele por meio de um numero, por exemplo, aparecer escrito: 1. Mike, 2. Joao. Se o usuário digitar 1, vai começar a aparecer os println do meu código, perguntando a nota das avaliações, rp, etc... e quando terminar perguntar se quer continuar ou não setando nota dos alunos, se sim, aparecer a lista de alunos novamente, se não, a println de despedida que eu disse. Essa última parte eu já fiz. P.S: Quando colocarem o código em algum programa, irão perceber que "opc1 = 1" está escrito do lado "O valor designado nunca é utilizado". Não sei como consertar isso. Compartilhar este post Link para o post Compartilhar em outros sites