Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Java Question: Add a method to the GradeBook that saves its entries. Put each en

ID: 641980 • Letter: J

Question

Java Question:

Add a method to the GradeBook that saves its entries.
Put each entry on its own line, with a separator between values.
Hint: Class Integer's static parseInt method can turn a string into it's int value.
Also write a method that can read them back in from the file.

Here is the Code:

public abstract class GradeBookEntry {

   private Person student;
   private String assessmentName;
  
   public GradeBookEntry( String assessmentName ){
       this.assessmentName = assessmentName;
   }

   public GradeBookEntry(Person student, String assessmentName) {
       this.student = student;
       this.assessmentName = assessmentName;
   }


   public GradeBookEntry() {
   }

   // The next six methods are just getters and setters
   // for the member variables of this class.
   public Person getStudent() {
       return student;
   }

   public void setStudent(Person person) {
       this.student = person;
   }

   public String getAssessmentName() {
       return assessmentName;
   }

   public void setAssessmentName(String assessmentName) {
       this.assessmentName = assessmentName;
   }
  
   public String getLetterGrade(){
       GradeConverter converter = new GradeConverter();
       return converter.convertGrade(this.getNumericGrade());
   }

   public void printEntry(){
       System.out.println("Assignment: " + getAssessmentName() );
       System.out.println("For student: " + getStudent().getName() );
       System.out.println("Grade: " + getNumericGrade() );
       System.out.println("Letter Grade: " + getLetterGrade() );
   }
  
   public abstract int getNumericGrade();
   public abstract void getData();
}

Explanation / Answer

public class Student {

final String STRING_REP = "---------------";

private String studentName, classGrade;

private int studentNumber, studentYear;

private double studentAverage, classAverage;

private double[] testsScore, assignmentsScore;

public Student(String studentName, int studentYear) {

this.studentName = studentName;

this.studentYear = studentYear;

this.studentNumber = computeRandomNumber();

testsScore = new double[2];

assignmentsScore = new double[2];

}

public String getStudentDetails() {

return (" " + STRING_REP + " Student Details Student Name: " +

studentName + " Grade: " +

studentYear + " Student Number: " +

studentNumber + " " + STRING_REP + " ");

}

public void getTestScores(){

int count = 1;

System.out.println(STRING_REP);

for(double i : testsScore){

System.out.println("Test " + count + ": " + i);

count++;

}

System.out.println(STRING_REP);

}

public void getAssignmentScores() {

int count = 1;

System.out.println(STRING_REP);

for(double i : assignmentsScore){

System.out.println("Assignment " + count + ": " + i);

count++;

}

System.out.println(STRING_REP);

}

public void setTestScores(double test1, double test2) {

testsScore[0] = test1;

testsScore[1] = test2;

}

public void setAssignmentScores(double assignment1, double assignment2) {

assignmentsScore[0] = assignment1;

assignmentsScore[1] = assignment2;

}

public int computeRandomNumber() {

Random randomNumber = new Random();

int rNumber = 100 * randomNumber.nextInt(999);

return rNumber;

}

public String computeAverage() {

double temp1 = 0, temp2 = 0, array1 = 1, array2 = 1;

for (int i =0; i < testsScore.length; i++) {

temp1 += testsScore[i];

array1 += i;

}

for (int i =0; i < assignmentsScore.length; i++) {

temp2 += assignmentsScore[i];

array2 += i;
}

double average = (temp1 + temp2)/(array1 + array2);

return (STRING_REP + " Averages Average of tests: " + (temp1/array1) +

" Average of assignments: " + (temp2/array2) +

" Total Average: " + average + " " + STRING_REP);

}

public void computeGrade() {

}

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote