📄 grades3.java.bak
字号:
import javax.swing.JOptionPane;
class Grades3{
static final double ENGLISH_MIDTERM_PERCENTAGE = .25;
static final double ENGLISH_FINALEXAM_PERCENTAGE = .25;
static final double ENGLISH_RESEARCH_PERCENTAGE = .30;
static final double ENGLISH_PRESENTATION_PERCENTAGE = .20;
static final double MATH_MIDTERM_PERCENTAGE = .50;
static final double MATH_FINALEXAM_PERCENTAGE = .50;
static final double SCIENCE_MIDTERM_PERCENTAGE = .40;
static final double SCIENCE_FINALEXAM_PERCENTAGE = .40;
static final double SCIENCE_RESEARCH_PERCENTAGE = .20;
static int midterm = 0;
static int research = 0;
static int finalExam = 0;
static int presentation = 0;
static double finalNumericGrade = 0;
static String finalLetterGrade = "";
public static void main(String[] args){
String response;
String moreGrades;
moreGrades = JOptionPane.showInputDialog("Do you want to calculate a grade(Y/N)?");
moreGrades = moreGrades.toUpperCase();
while (moreGrades.equals("Y")){
//what type of student are we calculating?
response = whatKindOfStudent();
switch(Integer.parseInt(response)){
case 1:
calculateEnglishGrade();
displayGrade(midterm,finalExam,research,presentation,finalNumericGrade,finalLetterGrade);
break;
case 2:
calculateMathGrade();
displayGrade(midterm,finalExam,finalNumericGrade,finalLetterGrade);
break;
case 3:
calculateScienceGrade();
displayGrade(midterm,finalExam,research,finalNumericGrade,finalLetterGrade);
break;
default:
JOptionPane.showMessageDialog(null,response+"-is not a valid student type!");
System.exit(0);
}
moreGrades = JOptionPane.showInputDialog("Do you want to calculate another one(Y/N)?");
moreGrades = moreGrades.toUpperCase();
}
JOptionPane.showMessageDialog(null,"Thank you for using this Grades Calculate programm!");
System.exit(0);
}
public static String whatKindOfStudent(){
String response;
response = JOptionPane.showInputDialog("Enter student type(1=English;2=Math;3=Science)");
if(response == null)
{
JOptionPane.showMessageDialog(null,"You have clicked the cancle button!");
System.exit(0);
}
else
if(response.equals(""))
{
JOptionPane.showMessage(null,"You must make a choice in the input box!");
System.exit(0);
}
else
if(Integer.parseInt(response)<1 | Integer.parseInt(response)>3 )
{
JOptionPane.showMessage(null,response+"-is not a valid entry!");
System.exit(0);
}
return response;
}
public static void calculateEnglishGrade(){
midterm = Integer.parseInt(JOptionPane.showInputDialog("Enter the Midterm grade:"));
finalExam = Integer.parseInt(JOptionPane.showInputDialog("Enter the final exam grade:"));
research = Integer.parseInt(JOptionPane.showInputDialog("Enter the research grade:"));
presentation = Integer.parseInt(JOptionPane.showInputDialog("Enter the presentation grade:"));
finalNumericGrade = (midterm*ENGLISH_MIDTERM_PERCENTAGE)+
(finalExam*ENGLISH_FINALEXAM_PERCENTAGE)+
(research*ENGLISH_RESEARCH_PERCENTAGE)+
(presentation*ENGLISH_PRESENTATION_PERCENTAGE);
if(finalNumericGrade >= 93)
finalLetterGrade = "A";
else if((finalNumericGrade >= 85)&(finalNumericGrade < 93))
finalLetterGrade = "B";
else if((finalNumericGrade >= 78)&(finalNumericGrade < 85))
finalLetterGrade = "C";
else if((finalNumericGrade >= 70)&(finalNumericGrade < 78))
finalLetterGrade = "D";
else
finalLetterGrade = "F";
}
public static void calculateMathGrade(){
midterm = Integer.parseInt(JOptionPane.showInputDialog("Enter the midterm grade:"));
finalExam = Integer.parseInt(JOptionPane.showInputDialog("Enter the final exam grade:"));
finalNumericGrade = (midterm*MATH_MIDTERM_PERCENTAGE)+(finalExam*MATH_FINALEXAM_PERCENTAGE);
if(finalNumericGrade > 90)
finalLetterGrade = "A";
else if((finalNumericGrade >= 83)&(finalNumericGrade < 90))
finalLetterGrade = "B";
else if((finalNumericGrade >= 76)&(finalNumericGrade < 83))
finalLetterGrade = "C";
else if((finalNumericGrade >= 65)&(finalNumericGrade < 76))
finalLetterGrade = "D";
else
finalLetterGrade = "F";
}
public static void calculateScienceGrade(){
midterm = Integer.parseInt(JOptionPane.showInputDialog("Enter the midterm grade:"));
finalExam = Integer.parseInt(JOptionPane.showInputDialog("Enter the final exam grade:"));
research = Integer.parseInt(JOptionPane.showInputDialog("Enter the research grade:"));
finalNumericGrade = (midterm*SCIENCE_MIDTERM_PERCENTAGE)+(finalExam*SCIENCE_FINALEXAM_PERCENTAGE)+
(research*SCIENCE_RESEARCH_PERCENTAGE);
if (finalNumericGrade >= 90)
finalLetterGrade = "A";
else
if((finalNumericGrade >=80)&(finalNumericGrade < 90))
finalLetterGrade = "B";
else
if((finalNumericGrade >=70) & (finalNumericGrade < 80))
finalLetterGrade = "C";
else
if((finalNumericGrade >= 60)&(finalNumericGrade < 70))
finalLetterGrade = "D";
else
finalLetterGrade = "F";
}
public static void displayGrade(int midterm,int finalExam,int research,int presentation,
double finalNumericGrade,String finalLetterGrade){
JOptionPane.showMessageDialog(null,"***ENGLISH STUDENT***\n\n"+
"Midterm grade is:"+midterm+"\n"+
"Final Exam grade is:"+finalExam+"\n"+
"Research grade is:"+research+"\n"+
"Presentation grade is:"+presentation+"\n\n"+
"Final Numeric grade is:"+finalNumericGrade+"\n"+
"Final Letter Grade is:"+finalLetterGrade);
}
public static void displayGrade(int midterm,int finalExam,double finalNumericGrade,String finalLetterGrade){
JOptionPane.showMessageDialog(null,"***MATH STUDENT***\n\n"+
"Midterm grade is:"+midterm+"\n"+
"Final Exam grade is:"+finalExam+"\n"+
"Final Numeric grade is:"+finalNumericGrade+"\n"+
"Final Letter Grade is:"+finalLetterGrade);
}
public static void displayGrade(int midterm,int finalExam,int research,
double finalNumericGrade,String finalLetterGrade){
JOptionPane.showMessageDialog(null,"***SCIENCE STUDENT***\n\n"+
"Midterm grade is:"+midterm+"\n"+
"Final Exam is:"+finalExam+"\n"+
"Research grade is:"+research+"\n\n"+
"Final Numeric Grade is:"+finalNumericGrade+"\n"+
"Final Letter Grade is:"+finalLetterGrade);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -