Trata-se de um código que realiza o cálculo da média das notas e informa se o aluno passou ou não segundo os critérios da UNI-RN - envolve Média Ponderada e Média Aritmética. Este programa verifica se o aluno passou ou ficou em recuperação, quanto precisa tirar na recuperação e qual será sua média final conforme a nota tirada na recuperação.
//Autor: Thiago Campos
//Data: 12.12.2012
package main; //pacote no qual pertence esta classe
import javax.swing.JOptionPane;
import java.text.DecimalFormat; //responsavel por formatar a qtd de casas decimais
import dominio.Calculos;
public class FimDeSemestre {
public static void main(String[] args){
//declaração de variaveis
int op;
double n1, n2;
Calculos mP = new Calculos();
double resultado;
DecimalFormat df = new DecimalFormat("0.##"); //instancio o formato
//escolha da opção
do {
op = Integer.parseInt(JOptionPane.showInputDialog("MENU DE OPÇÕES"
+ "\n1-Saber a situação"
+ "\n2-Saiba sua média final com a nota de recuperação"
+ "\n3-Sair"));
switch (op) {
case 1: //entrada das notas
n1 = Double.parseDouble(JOptionPane.showInputDialog("Informe a 1ª nota(Use o ponto no lugar da vírgula):"));
n2 = Double.parseDouble(JOptionPane.showInputDialog("Informe a 2ª nota(Use o ponto no lugar da vírgula):"));
resultado = mP.mediaPonderada(n1, n2);
if (resultado >= 7) { //media ponderada maior - igual a 7 - aluno Aprovado
JOptionPane.showMessageDialog(null, "Parabéns, você está aprovado!");
} else {
if (resultado < 3) { //media ponderada menor do que 3 - aluno reprovado
JOptionPane.showMessageDialog(null, "Você está reprovado!");
} else {
JOptionPane.showMessageDialog(null, "Você ficou em recuperação,"
+ "\n Sua média é: " + df.format(mP.mediaPonderada(n1, n2))
+ "\n Você precisa tirar " + df.format(mP.qtoPrecisa()) + " na recuperação para passar com média 5,0");
}
}
break; //fim do menu == a 1
case 2: //Esta opção informará ao aluno qual será a média final dele com a nota de recuperação
double nRec = Double.parseDouble(JOptionPane.showInputDialog("Informe a nota de recuperação."));
JOptionPane.showMessageDialog(null, "A media final é " + mP.mediaFinal(nRec));
break;
case 3:
JOptionPane.showMessageDialog(null, "Fechando o programa!");
break;
default:
JOptionPane.showMessageDialog(null, "Opção inválida!");
}
} while (op != 3);
} //fim do main
} //fim da classe
/*---------------------------------------------------------------------------------------------------
* Esta classe possui todos os cálculos do programa
---------------------------------------------------------------------------------------------------*/
package dominio;
public class Calculos {
private double mP;
private double mF;
//calculo da media ponderada
public double mediaPonderada (double n1, double n2){
return mP = ((n1*4) + (n2*6))/10;
}
//calculo da media aritmética
public double mediaFinal(double nR){
return mF = (mP+nR)/2;
}
//calculo da nota que precisa tirar para passar com média 5
public double qtoPrecisa(){
return (10 - mP);
}
} //fim da classe
tentei copiar seu código para o eclipse,mas ha muitos erros, se puder upar de uma forma mais legível,agradeço.
ResponderExcluirSr. Anônimo não há erros no código, ocorre que ele foi feito no Netbeans e para rodar no Eclipse, não é só copiar e colar, vc precisa criar as classes com os mesmos nomes copiar e colar o código correspondente. Espero ter ajudado. boa noite!
Excluir