• Home
  • Blog
  • In this lab, you will be re-implementing your solution from Lab 3 in Perl. Use your Lab 3 submission to aid you in building an identical solution in the Perl scripting language.

In this lab, you will be re-implementing your solution from Lab 3 in Perl. Use your Lab 3 submission to aid you in building an identical solution in the Perl scripting language.

0 comments

In this lab, you will be re-implementing your solution from Lab 3 in Perl. Use your Lab 3 submission to aid you in building an identical solution in the Perl scripting language.

The data file and requested outputs are the same. The extra credit opportunity is also the same as Lab 3.

Task 1

Generate a report containing the lowest, highest and average score
for each assignment in the data file. The name of the assignment is
located in column 3. Your report should be in a tabular format as shown
in the sample below;

Name    Low     High    Average
Q06     77      95      86.80
L05     40      96      46.60
WS      5       5       5
Q07     58      100     78.80
L06     60      99      61
L07     77      86      64.80
H01     19      90      47.80
H02     47      95      74.60
H03     70      95      82.20
H04     46      80      65
H05     54      95      76.60
H06     58      97      80.60
Q01     25      100     74.80
H07     52      90      67
Q02     84      100     91.60
L01     41      91      75
Q03     33      100     66.80
L02     0       100     61.40
Q04     55      100     81
L03     88      100     95.80
FINAL   58      99      85.60
Q05     54      99      76.80
L04     48      100     79.20

Your solution must generate the report using the data file given (Lab03-data.csv).
No points will be awarded for solutions that copy-paste the above
sample data and use Perl to print it to the console. Provide the command
used to run your script against the lab03 data file along with your
completed Perl script. If you do not include your Perl script file you will recieve an automatic 0.

Task 2

Calculate the grade for each student that appears in the data file.
You may calculate the grade based on total earned points, divided by
total possible points. Or, for 10 points extra credit; Use the weighted totals for this course; available in the syllabus and on the course home page.

Output a list of students, their grade as a percentage and a letter grade. For simplicity; use this letter grade scale;

  • A = 90 >= grade <= 100
  • B = 80 >= grade < 90
  • C = 70 >= grade < 80
  • D = 60 >= grade < 70
  • E = grade < 60

The following sample output has been provided as a guide. Your solution must be based on the data in the Lab03-data.csv file. No points will be awarded to solutions that are based on copy-pasting the sample output and printing it with Perl.

Name    Percent Letter
Andrew  75.21   C
Chelsey 92.21   A
Shane   77.64   C
Ava     79.76   C
Sam     62.34   D

Submit your completed script and the Perl command needed to run it. If you do not include your Perl script file you will recieve an automatic 0.

Task 3

Select either Task 1 or Task 2 and write a shell script that takes a
data file name as an argument. The shell script then uses that file name
to run your Perl script and sort the results
alphabetically, either by assignment name (Task 1) or student name
(Task 2). Remember to account for the headers in these outputs. Please don’t forget to do this part, and make sure it’s a Bash script!

Deliverables

Use the text box provided, or submit a Word or PDF document
containing your solutions to Tasks 1, 2 and 3. You must also include
your scripts must be in in .pl format. Screenshots will not be accepted. Your submission must be copyable into a terminal for testing.

About the Author

Follow me


{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}