/** * @(#)student.java * * * @author Michael Cecconet * @version 1.00 2007/2/26 */import java.util.Arrays;import java.util.ArrayList;//This is class is a template for multiple objectspublic class student {private String lastName;private String firstName;private int studentNumber;static ArrayList<assignment> assignmentTracker = new ArrayList<assignment>();private int grade; public student(String lastN,String firstN,int stNumber) { lastName=lastN; firstName=firstN; studentNumber=stNumber; } public void setStudent(String lastN,String firstN,int stNumber) { lastName=lastN; firstName=firstN; studentNumber=stNumber; } public String showLastName(){ return lastName; } public String showFirstName(){ return firstName; } public int showNumber(){ return studentNumber; } public void makeGrade(int gotNumber){ int temp,counter; temp=0; counter=0; assignment tempAssign; for (int i=0 ; i < assignmentTracker.size() ; i++) { tempAssign=assignmentTracker.get(i); if(tempAssign.getWho() == gotNumber ){ temp = temp+(int)tempAssign.getPercent(); counter +=1; } } grade = 0; if (counter >0){ grade=temp/counter; } } public int showAMark(int gotWho,int assNumber ){//Return the value of a student's assignment (Student Number, Assignment Number) assignment temp; int count=0; for (int i=0;i<assignmentTracker.size();i++){ temp=assignmentTracker.get(i); if (temp.getWho()==gotWho){ count+=1; if (count ==assNumber){ return temp.getMark(); } } } return -1; } public int showATop(int gotWho,int assNumber ){//Return the value of an assignment's total (Student Number, Assignment Number) assignment temp; int count=0; for (int i=0;i<assignmentTracker.size();i++){ temp=assignmentTracker.get(i); if (temp.getWho()==gotWho){ count+=1; if (count ==assNumber){ return temp.getTop(); } } } return -1; } public void changeGrade(int gotWho,int assNumber, int newGrade){ assignment temp; int count=0; int saveNumber=0; for (int i=0;i<assignmentTracker.size();i++){ temp=assignmentTracker.get(i); if (temp.getWho()==gotWho){ count+=1; if (count ==assNumber){ saveNumber =i; temp.changeMark(newGrade); assignmentTracker.set(saveNumber,temp); } } } } public int showGrade() { return grade; } public void newAssign(String assignName, int newMark, int topMark, int relevantTOWHO) { assignmentTracker.add(assignmentTracker.size(),new assignment(assignName, newMark, topMark,relevantTOWHO)); } public void displayInfo() { System.out.println("Name: "+lastName+", "+firstName+"\n Student Number: "+ studentNumber); } public void displayAll(int gotWho) {//INPUT UNIQUE STUDENT NUMBER assignment temp; int count=0; System.out.println("\nName: "+lastName+", "+firstName+"\n Student Number: "+ studentNumber); System.out.println("Overall Mark : "+grade+"%"); for (int i=0;i<assignmentTracker.size();i++){ temp=assignmentTracker.get(i); if (temp.getWho()==gotWho){ count+=1; System.out.println(count+"."+temp.getName()+" : ["+temp.getMark()+"/"+temp.getTop()+"] - "+temp.getPercent()+"%"); } } if (count ==0){ System.out.println("No recorded assignments for this student."); } }}