/* package whatever; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;


 class GradeBookTest 
 { 
	public static void main( String[] args ) 
	{ 

		int[] gradesArray = { 87, 68, 94, 100, 83, 78, 85, 91, 76, 87 }; 
	
		GradeBook myGradeBook = new GradeBook("CS101 Introduction to Java Programming", gradesArray ); 
		myGradeBook.displayMessage(); 
		myGradeBook.processGrades(); 
	} 
 } 
 
 
 class GradeBook 
 { 
	private String courseName; 
	private int[] grades; 

	public GradeBook( String name, int[] gradesArray ) 
	{ 
		courseName = name;
		grades = gradesArray; 
	} 
	public void setCourseName( String name ) 
	{ 
		courseName = name;
	} 
	public String getCourseName() 
	{ 
		return courseName;
	} 
	public void displayMessage() 
	{ 
		System.out.printf( "Welcome to the grade book for%s!",getCourseName() ); 
	} 
	public void processGrades() 
	{ 
		outputGrades(); 
		System.out.printf( "Class average is %.2f", getAverage() ); 
		outputBarChart(); 
	} 
	public double getAverage() 
	{ 
		int total = 0; // initialize total
		for ( int grade : grades ) 
			total += grade; 
		return ( double ) total / grades.length; 
	} 

	public void outputBarChart() 
	{
		int[] frequency=new int[11];
		
		for(int i = 0; i < grades.length; i++){
			/*
			switch(grades[i]/10){
				case 0:
					frequency[0]++;
					break;
				case 1:
					frequency[1]++;
					break;
				case 2:
					frequency[2]++;
					break;
				case 3:
					frequency[3]++;
					break;
				case 4:
					frequency[4]++;
					break;
				case 5:
					frequency[5]++;
					break;
				case 6:
					frequency[6]++;
					break;
				case 7:
					frequency[7]++;
					break;
				case 8:
					frequency[8]++;
					break;
				case 9:
					frequency[9]++;
					break;
				case 10:
					frequency[10]++;
					break;
			}*/
			
			frequency[grades[i]/10]++;  //例如25分 歸類到frequency[2]
		}
		
		System.out.println();
		System.out.print("Grade distribution:");
		for(int i = 0; i < frequency.length; i++){
			System.out.println();
			if(i == frequency.length-1)
				System.out.print("100:");
			else
				System.out.print(i+"0-"+i+"9:");
			for(int j = 0; j < frequency[i]; j++){
				System.out.print("*");
			}
		}

	}	

	public void outputGrades() 
	{ 
		System.out.println( "The grades are:" ); 
		for ( int student = 0; student < grades.length; student++ ) 
			System.out.printf( "Student %2d: %3d", student + 1, grades[ student ] ); 
	} 
 } 