I need this project to be written in swift programming language
Goal: To practice with your choice of languages. Problem : Suppose at the end of the semester, there is a file "scores.dat" recording scores each student has earned so far from closed lab assignments (CLA), open lab assignments (OLA), quizzes, exams, and final exam score. You can assume there are no more than 30 students. The final letter grade is decided according to the following table based on the total points they have earned: Total Points Final Letter Grade Total Points Final Letter Grade >=90 A >=70, but <73 c-="">=87, but <90 b+="">=67, but <70 d+="">=83, but <87 b="">=63, but <67 d="">=80, but <83 b-="">=60, but <63 d-="">=77, but <80 c+="">80><60 f="">=73, but <77 c in this assignment, you are asked to write a program to calculate student final letter grades as well as the average and highest scores of cla, ola, quizzes, exams, and final exam scores, respectively. the final result should be printed to the screen (standard output). requirements: · you must use the language you picked from project1. · at the beginning of the program, your program should give the user a prompt for the name of the data file which contains the records of student grades. · define a class student, which includes student id, scores for cla, ola, quizzes, exams, final scores, total points, and letter grade. all member data must be private. the class must provide a function to calculate the final letter grade. · define a class roster, which has an associative array (other similar data structures like map, hash map are also fine) to store all student objects. define appropriate methods in the class to calculate, update, and query individual student information as well as required statistic information of all students. · your program should allow users to perform two queries. for each query, the user inputs c#, and your program should print all information (including his/her final letter grade) of the student with the given c#. after two queries, your program print information of all students as well as the average and highest scores of cla, ola, quizzes, exams, and final exam on the screen. make sure that your program has the proper documentation (program heading, variable explanation, description/input/output for each user defined function, explanation for logically related statements, etc), and style for good program readability and modifiability. the website (https://repl.it/languages/ruby) contains online compilers/interpreters and advanced ides for lots of common programming languages. it also allows you to create input text file. what to submit: submit the following as a zip file: · your source code · a screen shot (must be image files) of your query results and information of all student as well as all statistic data printed by your program. start date c#claolaquizexamfinalexam c12345011020103030a c123450291052020d c1234503101782727b+ c1234504814102915c c123450571832427c+ c123450681691314d- c123450761152726c c123450881591728c+ c123450951982829b+ c123451091461919d+ c12345112641719f c123451271872225c+ c123451341091119f c123451481882419c+ c123451571372020d+ c1234516101991919c c123451781091924c- c123451861172325c- c12345194841920f c123452091592224c+ c12345211013102030b c12345221012102525b- average7.514.07.521.622.9 highest1020103030 c# cla ola quiz exam finalexam c1234501 10 20 10 30 30 c1234502 9 10 5 20 20 c1234503 10 17 8 27 27 c1234504 8 14 10 29 15 c1234505 7 18 3 24 27 c1234506 8 16 9 13 14 c1234507 6 11 5 27 26 c1234508 8 15 9 17 28 c1234509 5 19 8 28 29 c1234510 9 14 6 19 19 c1234511 2 6 4 17 19 c1234512 7 18 7 22 25 c1234513 4 10 9 11 19 c1234514 8 18 8 24 19 c1234515 7 13 7 20 20 c1234516 10 19 9 19 19 c1234517 8 10 9 19 24 c1234518 6 11 7 23 25 c1234519 4 8 4 19 20 c1234520 9 15 9 22 24 c1234521 10 13 10 20 30 c1234522 10 12 10 25 25 c="" ="" ="" in="" this="" assignment,="" you="" are="" asked="" to="" write="" a="" program="" to="" calculate="" student="" final="" letter="" grades="" as="" well="" as="" the="" average="" and="" highest="" scores="" of="" cla,="" ola,="" quizzes,="" exams,="" and="" final="" exam="" scores,="" respectively.="" the="" final="" result="" should="" be="" printed="" to="" the="" screen="" (standard="" output).="" requirements:="" ·="" you="" must="" use="" the="" language="" you="" picked="" from="" project1.="" ·="" at="" the="" beginning="" of="" the="" program,="" your="" program="" should="" give="" the="" user="" a="" prompt="" for="" the="" name="" of="" the="" data="" file="" which="" contains="" the="" records="" of="" student="" grades.="" ·="" define="" a="" class="" student,="" which="" includes="" student="" id,="" scores="" for="" cla,="" ola,="" quizzes,="" exams,="" final="" scores,="" total="" points,="" and="" letter="" grade.="" all="" member="" data="" must="" be="" private.="" the="" class="" must="" provide="" a="" function="" to="" calculate="" the="" final="" letter="" grade.="" ·="" define="" a="" class="" roster,="" which="" has="" an="" associative="" array="" (other="" similar="" data="" structures="" like="" map,="" hash="" map="" are="" also="" fine)="" to="" store="" all student objects.="" define="" appropriate="" methods="" in="" the="" class="" to="" calculate,="" update,="" and="" query="" individual="" student="" information="" as="" well="" as="" required="" statistic="" information="" of="" all="" students.="" ·="" your="" program="" should="" allow="" users="" to="" perform="" two="" queries.="" for="" each="" query,="" the="" user="" inputs="" c#,="" and="" your="" program="" should="" print="" all="" information="" (including="" his/her="" final="" letter="" grade)="" of="" the="" student="" with="" the="" given="" c#.="" after="" two="" queries,="" your="" program="" print="" information="" of="" all="" students="" as="" well="" as="" the="" average="" and="" highest="" scores="" of="" cla,="" ola,="" quizzes,="" exams,="" and="" final="" exam="" on="" the="" screen.="" make="" sure="" that="" your="" program="" has="" the="" proper="" documentation="" (program="" heading,="" variable="" explanation,="" description/input/output="" for="" each="" user="" defined="" function,="" explanation="" for="" logically="" related="" statements,="" etc),="" and="" style="" for="" good="" program="" readability="" and="" modifiability.="" ="" the="" website="" (https://repl.it/languages/ruby)="" contains="" online="" compilers/interpreters="" and="" advanced="" ides="" for="" lots="" of="" common="" programming="" languages.="" it="" also="" allows="" you="" to="" create="" input="" text="" file.="" what="" to="" submit:="" submit="" the="" following="" as="" a="" zip="" file:="" ·="" your="" source="" code="" ·="" a="" screen="" shot="" (must="" be="" image="" files)="" of="" your="" query="" results="" and="" information="" of="" all="" student="" as="" well="" as="" all="" statistic="" data="" printed="" by="" your="" program.="" start="" date="" c#="" cla="" ola="" quiz="" exam="" finalexam="" c1234501="" 10="" 20="" 10="" 30="" 30="" a="" c1234502="" 9="" 10="" 5="" 20="" 20="" d="" c1234503="" 10="" 17="" 8="" 27="" 27="" b+="" c1234504="" 8="" 14="" 10="" 29="" 15="" c="" c1234505="" 7="" 18="" 3="" 24="" 27="" c+="" c1234506="" 8="" 16="" 9="" 13="" 14="" d-="" c1234507="" 6="" 11="" 5="" 27="" 26="" c="" c1234508="" 8="" 15="" 9="" 17="" 28="" c+="" c1234509="" 5="" 19="" 8="" 28="" 29="" b+="" c1234510="" 9="" 14="" 6="" 19="" 19="" d+="" c1234511="" 2="" 6="" 4="" 17="" 19="" f="" c1234512="" 7="" 18="" 7="" 22="" 25="" c+="" c1234513="" 4="" 10="" 9="" 11="" 19="" f="" c1234514="" 8="" 18="" 8="" 24="" 19="" c+="" c1234515="" 7="" 13="" 7="" 20="" 20="" d+="" c1234516="" 10="" 19="" 9="" 19="" 19="" c="" c1234517="" 8="" 10="" 9="" 19="" 24="" c-="" c1234518="" 6="" 11="" 7="" 23="" 25="" c-="" c1234519="" 4="" 8="" 4="" 19="" 20="" f="" c1234520="" 9="" 15="" 9="" 22="" 24="" c+="" c1234521="" 10="" 13="" 10="" 20="" 30="" b="" c1234522="" 10="" 12="" 10="" 25="" 25="" b-="" average="" 7.5="" 14.0="" 7.5="" 21.6="" 22.9="" highest="" 10="" 20="" 10="" 30="" 30="" c#="" cla="" ola="" quiz="" exam="" finalexam="" c1234501="" 10="" 20="" 10="" 30="" 30="" c1234502="" 9="" 10="" 5="" 20="" 20="" c1234503="" 10="" 17="" 8="" 27="" 27="" c1234504="" 8="" 14="" 10="" 29="" 15="" c1234505="" 7="" 18="" 3="" 24="" 27="" c1234506="" 8="" 16="" 9="" 13="" 14="" c1234507="" 6="" 11="" 5="" 27="" 26="" c1234508="" 8="" 15="" 9="" 17="" 28="" c1234509="" 5="" 19="" 8="" 28="" 29="" c1234510="" 9="" 14="" 6="" 19="" 19="" c1234511="" 2="" 6="" 4="" 17="" 19="" c1234512="" 7="" 18="" 7="" 22="" 25="" c1234513="" 4="" 10="" 9="" 11="" 19="" c1234514="" 8="" 18="" 8="" 24="" 19="" c1234515="" 7="" 13="" 7="" 20="" 20="" c1234516="" 10="" 19="" 9="" 19="" 19="" c1234517="" 8="" 10="" 9="" 19="" 24="" c1234518="" 6="" 11="" 7="" 23="" 25="" c1234519="" 4="" 8="" 4="" 19="" 20="" c1234520="" 9="" 15="" 9="" 22="" 24="" c1234521="" 10="" 13="" 10="" 20="" 30="" c1234522="" 10="" 12="" 10="" 25="">77 c in this assignment, you are asked to write a program to calculate student final letter grades as well as the average and highest scores of cla, ola, quizzes, exams, and final exam scores, respectively. the final result should be printed to the screen (standard output). requirements: · you must use the language you picked from project1. · at the beginning of the program, your program should give the user a prompt for the name of the data file which contains the records of student grades. · define a class student, which includes student id, scores for cla, ola, quizzes, exams, final scores, total points, and letter grade. all member data must be private. the class must provide a function to calculate the final letter grade. · define a class roster, which has an associative array (other similar data structures like map, hash map are also fine) to store all student objects. define appropriate methods in the class to calculate, update, and query individual student information as well as required statistic information of all students. · your program should allow users to perform two queries. for each query, the user inputs c#, and your program should print all information (including his/her final letter grade) of the student with the given c#. after two queries, your program print information of all students as well as the average and highest scores of cla, ola, quizzes, exams, and final exam on the screen. make sure that your program has the proper documentation (program heading, variable explanation, description/input/output for each user defined function, explanation for logically related statements, etc), and style for good program readability and modifiability. the website (https://repl.it/languages/ruby) contains online compilers/interpreters and advanced ides for lots of common programming languages. it also allows you to create input text file. what to submit: submit the following as a zip file: · your source code · a screen shot (must be image files) of your query results and information of all student as well as all statistic data printed by your program. start date c#claolaquizexamfinalexam c12345011020103030a c123450291052020d c1234503101782727b+ c1234504814102915c c123450571832427c+ c123450681691314d- c123450761152726c c123450881591728c+ c123450951982829b+ c123451091461919d+ c12345112641719f c123451271872225c+ c123451341091119f c123451481882419c+ c123451571372020d+ c1234516101991919c c123451781091924c- c123451861172325c- c12345194841920f c123452091592224c+ c12345211013102030b c12345221012102525b- average7.514.07.521.622.9 highest1020103030 c# cla ola quiz exam finalexam c1234501 10 20 10 30 30 c1234502 9 10 5 20 20 c1234503 10 17 8 27 27 c1234504 8 14 10 29 15 c1234505 7 18 3 24 27 c1234506 8 16 9 13 14 c1234507 6 11 5 27 26 c1234508 8 15 9 17 28 c1234509 5 19 8 28 29 c1234510 9 14 6 19 19 c1234511 2 6 4 17 19 c1234512 7 18 7 22 25 c1234513 4 10 9 11 19 c1234514 8 18 8 24 19 c1234515 7 13 7 20 20 c1234516 10 19 9 19 19 c1234517 8 10 9 19 24 c1234518 6 11 7 23 25 c1234519 4 8 4 19 20 c1234520 9 15 9 22 24 c1234521 10 13 10 20 30 c1234522 10 12 10 25 25>60>63>83>67>87>70>90>73>