Description of the student

Assignment Help Basic Computer Science
Reference no: EM132184124

Modify the Student class from the chapter 7 source files as follows. Each student object should also contain the scores for three tests. Provide a constructor that sets all instance values based on parameter values. Overload the constructor such that each test score is assumed to be initially zero. Provide a method called setTestScore that accepts two parameters: the test number (1 through 3) and the score. Also provide a method called getTestScore that accepts the test number and returns the appropriate score. Provide a method called average that computes and returns the average test score for this student. Modify the toString method such that the test scores and average are included in the description of the student.  

PP 7.3 - Write a class called Course that represents a course taken at a school. Represent each student using the modified Student class from the previous programming project. Use an ArrayList in the Course to store the students taking that course. The constructor of the Course class should accept only the name of the course. Provide a method called addStudent that accepts one Student parameter. Provide a method called average that computes and returns the average of all students' test score averages. Provide a method called roll that prints all students in the course. Create a driver class named School with a main method that creates a course and several students, adds the students to the course, prints a roll, and prints the overall course test average.

address.java

public class Address {

   private String streetAddress, city, state;
   private long zipCode;

   // -----------------------------------------------------------------
   // Constructor: Sets up this address with the specified data.
   // -----------------------------------------------------------------
   public Address(String street, String town, String st, long zip) {

       streetAddress = street;
       city = town;
       state = st;
       zipCode = zip;
   }

   // -----------------------------------------------------------------
   // Returns a description of this Address object.
   // -----------------------------------------------------------------
   public String toString() {
       String result;
       result = streetAddress + "n";
       result += city + ", " + state + " " + zipCode;
       return result;
   }
}

Course.java

public class Course {
   private int test1;
   private int test2;
   private int test3;

   public Course(int t1, int t2, int t3) {
       test1 = t1;
       test2 = t2;
       test3 = t3;
   }

   public String toString() {
       String result;

       result = "Test 1 Score: " + test1 + "n";
       result += "Test 2 Score: " + test2 + "n";
       result += "Test 3 Score: " + test3 + "n";
       ;

       return result;
   }

   // All getter and setter methods
   public int getTest1() {
       return test1;
   }

   public void setTest1(int test1) {
       this.test1 = test1;
   }

   public int getTest2() {
       return test2;
   }

   public void setTest2(int test2) {
       this.test2 = test2;
   }

   public int getTest3() {
       return test3;
   }

   public void setTest3(int test3) {
       this.test3 = test3;
   }

}

School.java

public class School {
   
   // Main method that creates a course and seceral students
   
   public static void main(String[] args) {

       Address school = new Address("82 College Cir.", "Dahlonega", "GA", 30597);
       Address jHome = new Address("1234 Main Street", "Cumming", "GA", 30041);
       Student john = new Student("John", "Smith", jHome, school);
       Address mHome = new Address("123 Main Street", "Gainseville", "GA", 30501);
       Student matt = new Student("Matt", "Smith", mHome, school, 90, 87, 94);

       System.out.println(john);
       System.out.println(matt);

       john.setTestScore(1, 87);
       john.setTestScore(2, 90);
       john.setTestScore(3, 85);
       matt.setTestScore(2, 89);

       System.out.println("John Smith - Test 1: " + john.getTestScore(1));
       System.out.println("Matt Smith - Test 2: " + matt.getTestScore(2));

       System.out.println();
       System.out.println(john);
       System.out.println(matt);
   }
}

Student.java

public class Student {

   private String firstName, lastName;
   private Address homeAddress, schoolAddress;
   private Course testScores;

   // -----------------------------------------------------------------
   // Constructor: Sets up this student with the specified values.
   // -----------------------------------------------------------------
   public Student(String first, String last, Address home, Address school) {
       firstName = first;
       lastName = last;
       homeAddress = home;
       schoolAddress = school;
      
       //Crate testScore with default test score of zero
       testScores = new Course(0, 0, 0);
   }

   //Overloaded constructor
   public Student(String first, String last, Address home, Address school,int test1,int test2,int test3 ) {
       firstName = first;
       lastName = last;
       homeAddress = home;
       schoolAddress = school;
      
       //Crate testScore with given test scores
       testScores = new Course(test1, test2, test3);
   }

   //Method to set test score
   public void setTestScore(int testNumber,int testScore) {
      
       if(testNumber==1) {
           testScores.setTest1(testScore);
       }
       else if(testNumber==2) {
           testScores.setTest2(testScore);
       }
       else if(testNumber==3) {
           testScores.setTest3(testScore);
       }
   }
 
   //Method to return test score by test number
   public int getTestScore(int testNumber) {
      
       if(testNumber==1) {
           return testScores.getTest1();
       }
       else if(testNumber==2) {
           return testScores.getTest2();
       }
       else if(testNumber==3) {
           return testScores.getTest3();
       } else {
           return 0;
       }
   }
 
   //Method to get average test score
   public double getAverageTestScores() {
      
       double avg;
      
       avg = (testScores.getTest1() + testScores.getTest2() + testScores.getTest3())/3.0;
      
       return avg;
   }
 
   public String toString() {
       String result;
       result = "------------- "+firstName + " " + lastName + " -------------n";
       result += "Home Address:" + homeAddress + "n";
       result += "School Address:" + schoolAddress+ "n";
       result += "Test 1 score:" + testScores.getTest1() + "n";
       result += "Test 2 score:" + testScores.getTest2() + "n";
       result += "Test 3 score:" + testScores.getTest3() + "n";
       result += "Average test score:" + getAverageTestScores() + "n";

       return result;
   }
}

Reference no: EM132184124

Assignment on corporate responsibility and marketing

Use the Internet to research the Apple Corporation, its current position and reputation regarding ethical and social responsibility, and the strategies that it currently emp

Different types of problem insurance claims

Identify the different types of problem insurance claims. Tell why you think a particular claim can be a "headache".Discuss follow-up techniques for tracking unpaid insuranc

List as many problems as you can find with this strategy

A simple strategy for aborting G-machine instructions when page faults occur would be simply to reset the G machine's program counter and stack pointer to the values they ha

Define electronic monitoring and employee productivity

Your task is to prepare a concise report that considers the relevant issues in electronic monitoring, employee productivity, and makes a recommendation. Your report should i

Construct a model theoretic interpretation of the above rule

Show a complete Datalog program with fact-based and rule-based literals that computes the following relation: list of pairs of cousins, where the first person is born after

Advancements in computer design

Consider the following: Advancements in computer design are outpacing the life of the computer and its components. Within a matter of a few years, a computer is obsolete and

Find the dependence of the total required heat exchanger

The flow rate of the water, its inlet and outlet temperatures, and the steam pressure are fixed. Assuming that the tube wall temperature remains constant, determine the depe

Performing a routing site audit

While performing a routing site audit of your wireless network, you discover an unauthorized Access Point placed on your network under the desk of Accounting department secu

Reviews

Write a Review

 
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd