Não sei Calcular > ^ < nota de um conjunto de alunos...Qual será a formula?

4 respostas
L

olá colegas… Estou Com Dificuldades neste codego, estou tentan
do calcular, maior e menor nota do “aluno” ???

int x=0,conta_alunos=0,soma=0, maio_nota=0, meno_nota=0;
      double media=0;
      while (x!=1)
      {//inicio do while
         int op = Integer.parseInt(JOptionPane.showInputDialog("Entre Com um das Op" +
           "ções Abaixo:\n 1-Corrigir Gabarito\n 2-Ver Resultados\n 3-Sair"));
           switch (op)
            {//inicio do switch
              case 1:
                int nume_questão=0;  
                String gabarito_aluno[] = new String[10]; 
                for (int i=0;i<10;i=i+1)
                  {
                   gabarito_aluno [i]= JOptionPane.showInputDialog("Ent" +
                    "re Com Resposta da Questão: "+(nume_questão+=1));
                  }
                int conta_pontuacao=0;
                if (gabarito_aluno[0].equalsIgnoreCase("a"))
                  {
                  soma = soma + 1;
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[1].equalsIgnoreCase("b"))
                  {
                  soma = soma + 1;
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[2].equalsIgnoreCase("c"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[3].equalsIgnoreCase("d"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[4].equalsIgnoreCase("e"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[5].equalsIgnoreCase("e"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[6].equalsIgnoreCase("d"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[7].equalsIgnoreCase("c"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[8].equalsIgnoreCase("b"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                 if (gabarito_aluno[9].equalsIgnoreCase("a"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                 if(    )?????????????
                 {
                 }
                  conta_alunos++;      
                 JOptionPane.showMessageDialog(null, "Seu Total de Acerto Foi: "+conta_pontuacao);
                
                 break;
              case 2:
                  media = soma / conta_alunos;
                  JOptionPane.showMessageDialog(null, "Nº de Alunos Que Ultili" +
                          "zarão o Sistema: "+conta_alunos+"\nMédia da Turma é: " +
                          ""+media+"\nMaior Nota da Turma: "+maio_nota+"\nMenor " +
                          "Nota Da Turma");
                  
                 break;
              case 3:
                  x=1;       
                 break;
              default:
                  JOptionPane.showMessageDialog(null,"Opção Invalida !!! \n" +
                          "Tente Novamente");   
              break;           
            }//fim do switch
      }//fim do while

4 Respostas

edufera10

Tenta fazer assim, acho que sua idéia é este neh? estes exercicios sempre são chatos, mas algoritimos é muito importante…

public Notas() {
        int x = 0, conta_alunos = 0, soma = 0, maio_nota = 0, meno_nota = 0;
        double media = 0;
        while (x != 1) {//inicio do while
            int op = Integer.parseInt(JOptionPane.showInputDialog("Entre Com um das Op" +
                    "ções Abaixo:\n 1-Corrigir Gabarito\n 2-Ver Resultados\n 3-Sair"));
            switch (op) {//inicio do switch
                case 1:
                    int nume_questão = 0;
                    String gabarito_aluno[] = new String[10];
                    for (int i = 0; i < 10; i = i + 1) {
                        gabarito_aluno[i] = JOptionPane.showInputDialog("Ent" +
                                "re Com Resposta da Questão: " + (nume_questão += 1));
                    }
                    int conta_pontuacao = 0;
                    if (gabarito_aluno[0].equalsIgnoreCase("a")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[1].equalsIgnoreCase("b")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[2].equalsIgnoreCase("c")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[3].equalsIgnoreCase("d")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[4].equalsIgnoreCase("e")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[5].equalsIgnoreCase("e")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[6].equalsIgnoreCase("d")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[7].equalsIgnoreCase("c")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[8].equalsIgnoreCase("b")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    if (gabarito_aluno[9].equalsIgnoreCase("a")) {
                        soma = soma + 1;
                        conta_pontuacao += 1;
                    }
                    conta_alunos++;
                    if (conta_alunos == 1) {
                        //inicializa a maior e a menor nota com as
                        //notas do primeiro aluno.
                        meno_nota = conta_pontuacao;
                        maio_nota = conta_pontuacao;
                    }
                    //depois de inicializadas verifica se existe
                    //outras notas maiores ou menores que as anteriores
                    if (meno_nota > conta_pontuacao) {
                        meno_nota = conta_pontuacao;
                    }
                    if (conta_pontuacao > maio_nota) {
                        maio_nota = conta_pontuacao;
                    }

                    JOptionPane.showMessageDialog(null, "Seu Total de Acerto Foi: " + conta_pontuacao);

                    break;
                case 2:
                    media = soma / conta_alunos;
                    JOptionPane.showMessageDialog(null, "Nº de Alunos Que Ultili" +
                            "zarão o Sistema: " + conta_alunos + "\nMédia da Turma é: " +
                            "" + media + "\nMaior Nota da Turma: " + maio_nota + "\nMenor " +
                            "Nota Da Turma " + meno_nota);

                    break;
                case 3:
                    x = 1;
                    break;
                default:
                    JOptionPane.showMessageDialog(null, "Opção Invalida !!! \n" +
                            "Tente Novamente");
                    break;
            }//fim do switch
        }//fim do while
    }
GabrielCardelli

Envez de utilizar tantos ifs porque não utilizar somente um while? com 1 if?

L
leonardocp:
olá colegas... Estou Com Dificuldades neste codego, estou tentan do calcular, maior e menor nota do "aluno" ???????
int x=0,conta_alunos=0,soma=0, maio_nota=0, meno_nota=0;
      double media=0;
      while (x!=1)
      {//inicio do while
         int op = Integer.parseInt(JOptionPane.showInputDialog("Entre Com um das Op" +
           "ções Abaixo:\n 1-Corrigir Gabarito\n 2-Ver Resultados\n 3-Sair"));
           switch (op)
            {//inicio do switch
              case 1:
                int nume_questão=0;  
                String gabarito_aluno[] = new String[10]; 
                for (int i=0;i<10;i=i+1)
                  {
                   gabarito_aluno [i]= JOptionPane.showInputDialog("Ent" +
                    "re Com Resposta da Questão: "+(nume_questão+=1));
                  }
                int conta_pontuacao=0;
                if (gabarito_aluno[0].equalsIgnoreCase("a"))
                  {
                  soma = soma + 1;
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[1].equalsIgnoreCase("b"))
                  {
                  soma = soma + 1;
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[2].equalsIgnoreCase("c"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[3].equalsIgnoreCase("d"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[4].equalsIgnoreCase("e"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[5].equalsIgnoreCase("e"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[6].equalsIgnoreCase("d"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[7].equalsIgnoreCase("c"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                if (gabarito_aluno[8].equalsIgnoreCase("b"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                 if (gabarito_aluno[9].equalsIgnoreCase("a"))
                  {
                  soma = soma + 1; 
                  conta_pontuacao +=1;
                  }
                 if(    )?????????????
                 {
                 }
                  conta_alunos++;      
                 JOptionPane.showMessageDialog(null, "Seu Total de Acerto Foi: "+conta_pontuacao);
                
                 break;
              case 2:
                  media = soma / conta_alunos;
                  JOptionPane.showMessageDialog(null, "Nº de Alunos Que Ultili" +
                          "zarão o Sistema: "+conta_alunos+"\nMédia da Turma é: " +
                          ""+media+"\nMaior Nota da Turma: "+maio_nota+"\nMenor " +
                          "Nota Da Turma");
                  
                 break;
              case 3:
                  x=1;       
                 break;
              default:
                  JOptionPane.showMessageDialog(null,"Opção Invalida !!! \n" +
                          "Tente Novamente");   
              break;           
            }//fim do switch
      }//fim do while
L

Muito obrigado edufera10, esta como eu quero o programa…

Criado 3 de outubro de 2009
Ultima resposta 5 de out. de 2009
Respostas 4
Participantes 3