Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- @author Alex Chu
- Inherits A3: QuizMeas Bk
- */
- interface Measurable
- {
- default double getMeasure()
- { return 0; }
- }
- public class QuizTester_2ChuA
- {
- public static void main( String[] args )
- {
- Quiz q1 = new Quiz(50);
- Quiz q2 = new Quiz(55);
- Quiz q3 = new Quiz(60);
- Quiz q4 = new Quiz(65);
- Quiz q5 = new Quiz(70);
- Quiz q6 = new Quiz(75);
- Quiz q7 = new Quiz(80);
- Quiz q8 = new Quiz(85);
- Quiz q9 = new Quiz(95);
- Quiz q10 = new Quiz(95);
- Measurable quizS[] = { q1, q2, q3, q4, q5, q6, q7, q8, q9, q10 };
- /*
- int[] quizS;
- quizS = new int[10];
- */
- /*
- Measurable[] quizS = new Quiz[10];
- for( int i = 0; i < quizS.length; i++ )
- { }
- */
- double avg = Data.average( quizS );
- System.out.println("Average score: " + avg );
- Measurable largest = Data.max( quizS );
- System.out.println("Largest score: " + largest.getMeasure() );
- Measurable highest = Data.max( quizS );
- System.out.println("Highest grade: " + ( (Quiz)highest).getGrade() );
- }
- }
- class Data
- {
- public static double average( Measurable[] objects )
- {
- double sum = 0;
- for( Measurable obj: objects )
- {
- sum = sum + obj.getMeasure();
- }
- if( objects.length > 0 )
- { return sum / objects.length; }
- else { return 0; }
- }
- public static Measurable max( Measurable[] objects )
- {
- Measurable maxObj = objects[0];
- for( Measurable obj : objects )
- {
- if( maxObj.getMeasure() < obj.getMeasure())
- {
- maxObj = obj;
- }
- }
- return maxObj;
- }
- }
- class Quiz implements Measurable
- {
- private String grade;
- private double score;
- public Quiz( double theScore )
- {
- score = theScore;
- }
- public String getGrade()
- {
- return grade;
- }
- public double getMeasure()
- {
- gradeScale();
- return score;
- }
- public void gradeScale()
- {
- if ( score >= 97 )
- { grade.equals("A+"); }
- else if ( score >= 93 )
- { grade.equals("A"); }
- else if ( score >= 90 )
- { grade.equals("A+"); }
- else if ( score >= 87 )
- { grade.equals("B+"); }
- else if ( score >= 83 )
- { grade.equals("B"); }
- else if ( score >= 80 )
- { grade.equals("B-"); }
- else if ( score >= 77 )
- { grade.equals("C+"); }
- else if ( score >= 73 )
- { grade.equals("C"); }
- else if ( score >= 70 )
- { grade.equals("C-"); }
- else if ( score >= 67 )
- { grade.equals("D+"); }
- else if ( score >= 63 )
- { grade.equals("D"); }
- else if ( score >= 60 )
- { grade.equals("D-"); }
- else if ( score >= 0 )
- { grade.equals("F"); }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement