Must be written in Ruby Problem: Suppose at the end of the semester,there is a file “scores.dat” recording scores each student hasearned so far from closed lab assignments (CLA), open labassignments (OLA), quizzes, exams, and final exam score. You canassume there are no more than 30 students. The final letter gradeis decided according to the following table based on the totalpoints they have earned: In this assignment, you are asked to write a program tocalculate student final letter grades as well as the average andhighest scores of CLA, OLA, quizzes, exams, and final exam scores.The final result should be printed to the screen (standardoutput). Requirements: At the beginning of the program, your program should give theuser a prompt for the name of the data file which contains therecords of student grades. Define a class Student, which includes student id, scores forCLA, OLA, quizzes, exams, final scores, total points, and lettergrade. All member data must be private. The class must provide afunction to calculate the final letter grade. Define a class Roster, which has an associative array (othersimilar data structures like map, hash map are also fine) to storeall Student objects. Define appropriate methods in theclass to calculate, update, and query individual studentinformation as well as required statistic information of allstudents. Your program should allow users to perform two queries. For eachquery, the user inputs C#, and your program should print allinformation (including his/her final letter grade) of the studentwith the given C#. After two queries, your program printinformation of all students as well as the average and highestscores of CLA, OLA, quizzes, exams, and final exam on thescreen. . . .
#Sales Offer!| Get upto 25% Off: