public static void caseG(){
		
		//we have a double  with the highest average
		//need to iterate through the list of students and find the one who has that average.
		boolean correct_input = false;
		while(!correct_input){

			if(students_in_courses.size() == 0){
				correct_input = true;
				JOptionPane.showMessageDialog(null, "No students have been registered", "Error", JOptionPane.INFORMATION_MESSAGE);
				break;
			}
			                                    
			//enter the course name and validate the input
			String one_or_two = JOptionPane.showInputDialog(null, "Enter 1 - For Best Student Award. Enter 2 - For Highest Mark Award  ", "Scholarships", JOptionPane.QUESTION_MESSAGE).toUpperCase();

			//best average (student)
			if (Integer.parseInt(one_or_two) == 1){
				correct_input = true;
				BestStudentAward best = new BestStudentAward();
				double mark = best.getWinner(students_in_courses);
				
				//create an interator for students currently in courses
				//we want to check to see which student has the best average
				java.util.Iterator<Student> iter = students_in_courses.iterator();		
				
				//create a reference to the student with the best average
				Student top_student = null;
				
				//while there are no more students in courses
				while(iter.hasNext()){
					
					//grab the first student
					Student current_student = iter.next();
				
					//get the student with the best average
					if (current_student.average == mark) top_student = current_student;
				
				}
				
				JOptionPane.showMessageDialog(null, "The winner of the Best Student Award is " + top_student.getName() + " with an average of " + top_student.average + ".", "Highest Average", JOptionPane.INFORMATION_MESSAGE);
			}
			//highest mark in a course
			else if (Integer.parseInt(one_or_two) == 2){
				correct_input = true;
				
				HighestMarkAward best = new HighestMarkAward();
				double highest_mark = best.getWinner(students_in_courses);
				
				//create an interator for students currently in courses
				//we want to check to see which student has the best average
				java.util.Iterator<Student> iter = students_in_courses.iterator();		
				
				//create a reference to the student with the best average
				Student top_student = null;
				
				//while there are no more students in courses
				while(iter.hasNext()){
					
					//grab the first student
					Student current_student = iter.next();
				
					//find who the top student is
					if(current_student.highestMark() == highest_mark) top_student = current_student;
				}
				
				JOptionPane.showMessageDialog(null, "The winner of the Best Student Award is " + top_student.getName() + " with a Highest mark of " + top_student.highestMark() + ".", "Highest Mark", JOptionPane.INFORMATION_MESSAGE);
			}
			else{
				correct_input = false;
				JOptionPane.showMessageDialog(null, "Invalid entry!", "ERROR", JOptionPane.OK_OPTION);
			}
		}
	}