For unlimited access to Homework Help, a Homework+ subscription is required.

Avatar image
975468179704357 asked for the first time
Avatar image
1096428054493678 asked for the first time
Avatar image
akim12 asked for the first time
Avatar image
teresasebastiana27 asked for the first time
Avatar image
ei50nafiz asked for the first time
Avatar image
bobby asked for the first time

The University of Southern North Dakota Testing department needs to write a grading program for multiple choice test. It should be capable of grading tests with up to 50 questions and for any number of students. The program should grade individual exams and calculate the grade for the student based on the number of questions, each being the same value out of 100. For example, if there are 25 questions each is worth 4. This program must be written in Ada.  

The program must also determine how many times each score was earned on the test.  This is a count or frequency. The program must show the number of students graded and the class average.

 

The program should have 

  • an input file. The program asks the user for the name of the file. The file name is entered at the keyboard. All subsequent data is read from the file.
  • a score frequency count. Every time a score is computed increment a counter for that value. Any score from 0 to 100 is possible (integer only), so the program needs 101 counters!
  • A record type Student_Type containing the student ID and their answers, and t he final grade for the exam.
  • A package containing Student_Type as private and operations for reading Student_Type, grading the exam and displaying the student ID and grade.

 

Behavior not assigned to functions may be done in main.

 

The program will accept the input file name from the keyboard after prompting the user for the file name.

 

The first line in the input files contains the number of questions on the exam, the second the answer key, and all following lines contain the student ids and responses to the questions.

 

The input shown here

 

20

2 1 1 3 4 4 5 3 2 1 2 4 5 2 1 1 3 4 4 2

12345 2 1 1 1 4 4 3 3 2 1 2 4 5 2 2 1 4 4 4 3

23456 2 1 1 2 3 4 5 3 2 1 2 4 5 2 1 2 3 4 4 1

14567 1 2 1 3 4 4 3 3 2 1 2 4 5 2 2 1 4 4 4 2

15678 2 1 2 3 3 4 5 3 1 1 3 4 5 2 1 1 3 4 4 2

16789 2 1 1 3 4 4 5 3 2 1 2 4 5 2 1 1 3 4 4 2

17890 2 1 1 3 4 4 5 3 2 1 2 4 5 2 2 1 4 4 4 3

12245 1 2 1 3 4 4 3 3 2 1 4 4 5 2 2 1 4 4 4 2

12256 2 1 2 3 3 4 5 3 1 1 2 4 5 2 1 1 3 4 4 2

22345 2 1 1 2 3 4 5 3 2 1 2 4 5 2 1 2 3 4 4 1

22456 1 2 1 3 4 4 3 4 2 1 2 4 5 2 2 1 4 4 4 2

13244 2 1 1 3 3 4 5 3 1 1 3 4 5 2 1 1 3 4 4 2

22458 2 2 1 3 4 4 5 3 2 1 2 4 5 2 1 1 3 4 4 2

23678 2 1 3 3 4 4 5 3 2 1 2 4 5 2 2 4 4 4 4 3

24567 2 1 2 3 3 4 5 3 2 1 2 4 5 1 1 2 3 3 4 1

11412 2 1 2 3 3 4 5 3 1 2 2 4 4 2 1 1 3 4 4 2

 

produces this output:

Enter file name:scantron.txt

Student ID    Score

===================

12345          75

23456          80

14567          75

15678          80

16789         100

17890          85

12245          70

12256          85

22345          80

22456          70

13244          85

22458          95

23678          75

24567          70

11412          75

===================

Tests graded = 15

===================

Score     Frequency

===================

100           1

 95           1

 85           3

 80           3

 75           4

 70           3

===================

Class Average = 80

 

 

 (*** Beware!! The data files can vary in number of questions up to 50, and there can be any number (at least 1) of students. Your program must be flexible! ***)


Start filling in the gaps now
Log in