Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvidas com o array.


dnnlll

Pergunta

Olá pessoal sou novo aqui desculpe se eu fizer alguma besteira,se eu fizer me corrijam por favor.Estou iniciando em java e estou fazendo um programa que tem que calcular 6 notas dos alunos de uma sala,só que quem decide quantos alunos a na sala eo usuário por exemplo,se o usuário colocar 6 alunos,ai eu tenho que calcular as 6 notas de cada aluno da sala(aluno1 aluno2 aluno3 aluno4 aluno5 aluno6)e o nome de cada aluno deve ser imprimido na tela no fim do programa.

Exemplo:

aprovados são:

aluno1

aluno3

aluno6

Detalhe se o aluno tiver a media menor que 6,o aluno tera que fazer uma prova de recuperação.

E se o usuário digitar nas notas que o aluno tirou numeros maiores que 10 e menores que 1 devera aparecer uma mensagem de erro.

ai esta o codigo que eu fiz.

import javax.swing.JOptionPane;
public class Adicao {
    public static void main(String[] args) {

    String d1, d2,d3,d4,d5,t; // Primeiro e segundo nome inseridos pelo usuario

        int n1,n2,n3,n4,n5,trabalho; //variaveis da soma

        int sum,recu; //resultado

    // ler os NUMEROS

    d1 = JOptionPane.showInputDialog("Nota 001");

    d2 = JOptionPane.showInputDialog("NOTA 002");

    d3= JOptionPane.showInputDialog("NOTA 003");

    d4= JOptionPane.showInputDialog("NOTA 004");

    t= JOptionPane.showInputDialog("NOTA 006 (TRABALHO ESCOLAR EM GRUPO)");


    // converte os numeros do tipo String para o tipo int

    n1= Integer.parseInt(d1);

    n2= Integer.parseInt(d2);

    n3= Integer.parseInt(d3);

    n4= Integer.parseInt(d4);

    trabalho= Integer.parseInt(t);

    // soma os numeros


    sum = (n1 + n2 + n3 + n4 + trabalho)/5;

        //uso do if e else pra saber se a media e menor que o permitido

        if(sum>=6){
        JOptionPane.showMessageDialog(null, "Este Aluna Esta Aprovado media= " + (sum), "Aprovado", JOptionPane.PLAIN_MESSAGE);
        }

        else{
        JOptionPane.showMessageDialog(null, "Este Aluno Esta reprovado media= " + (sum),"Reprovado" , JOptionPane.PLAIN_MESSAGE);
        JOptionPane.showMessageDialog(null, "Fazer outra Prova");

            d5= JOptionPane.showInputDialog("NOTA DE RECUPERAÇÃO");
            n5= Integer.parseInt(d5);
    
            recu = (sum + n5)/2;
            if(recu>=6){
            JOptionPane.showMessageDialog(null, "Este Aluna Esta Aprovado media= " + (recu), "Aprovado", JOptionPane.PLAIN_MESSAGE);
            }
            else{
            JOptionPane.showMessageDialog(null, "Este Aluno Esta reprovado media= " + (recu),"Reprovado" , JOptionPane.PLAIN_MESSAGE);
}
    }

    System.exit(0); //termina o aplicativo

    }

}

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

use um if em cada entrada do usuario... e faça o teste.

d1 = Integer.parseInt(JOptionPane.showInputDialog("Nota 001"));
if(d1>10 || d1<1){
JOptionPane.showMessageDialog(null, "Nota incorreta");
}

ali ainda você poderia adicionar por while + try, para validar corretamente...

como são notas, com inteiro também dara erro com notas quebradas 7.5 por exemplo...

troque int por float.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...