Question: 1 2 . 9 LAB: Course Grade 1 2 . 9 LAB: Course Grade Write a program that reads the student information from a tab
LAB: Course Grade LAB: Course Grade
Write a program that reads the student information from a tab separated values tsv file. The program then creates a text file that records the course grades of the students. Each row of the tsv file contains the Last Name, First Name, Midterm score, Midterm score, and the Final score of a student. A sample of the student information is provided in StudentInfo.tsv Assume the number of students is at least and at most Assume also the last names and first names do not contain whitespaces.
The program performs the following tasks:
Read the file name of the tsv file from the user.
Open the tsv file and read the student information.
Compute the average exam score of each student.
Assign a letter grade to each student based on the average exam score in the following scale:
A: x
B: x
C: x
D: x
F: x
Compute the average of each exam.
Output the last names, first names, exam scores, and letter grades of the students into a text file named report.txt Output one student per row and separate the values with a tab character.
Output the average of each exam, with two digits after the decimal point, at the end of report.txt Hint: Use the format specification to set the precision of the output.
Ex: If the input of the program is:
StudentInfo.tsv
and the contents of StudentInfo.tsv are:
Barrett Edan
Bradshaw Reagan
Charlton Caius
Mayo Tyrese
Stern Brenda
the file report.txt should contain:
Barrett Edan F
Bradshaw Reagan A
Charlton Caius B
Mayo Tyrese D
Stern Brenda C
Averages: midterm midterm final
Write a program that reads the student information from a tab separated values tsv file. The program then creates a text file that records the course grades of the students. Each row of the tsv file contains the Last Name, First Name, Midterm score, Midterm score, and the Final score of a student. A sample of the student information is provided in StudentInfo.tsv Assume the number of students is at least and at most Assume also the last names and first names do not contain whitespaces.
The program performs the following tasks:
Read the file name of the tsv file from the user.
Open the tsv file and read the student information.
Compute the average exam score of each student.
Assign a letter grade to each student based on the average exam score in the following scale:
A: x
B: x
C: x
D: x
F: x
Compute the average of each exam.
Output the last names, first names, exam scores, and letter grades of the students into a text file named report.txt Output one student per row and separate the values with a tab character.
Output the average of each exam, with two digits after the decimal point, at the end of report.txt Hint: Use the format specification to set the precision of the output.
Ex: If the input of the program is:
StudentInfo.tsv
and the contents of StudentInfo.tsv are:
Barrett Edan
Bradshaw Reagan
Charlton Caius
Mayo Tyrese
Stern Brenda
the file report.txt should contain:
Barrett Edan F
Bradshaw Reagan A
Charlton Caius B
Mayo Tyrese D
Stern Brenda C
Averages: midterm midterm final
my code: def calculategradescore:
if score :
return A
elif score :
return B
elif score :
return C
elif score :
return D
else:
return F
def main:
filename inputEnter the name of the TSV file:
try:
with openfilename, r as file:
lines file.readlines
studentgrades
for line in lines:
parts line.stripsplit # Changed this line
lastname, firstname, midterm midterm final parts
midterm intmidterm
midterm intmidterm
final intfinal
averagescore midterm midterm final
lettergrade calculategradeaveragescore
studentgrades.appendlastname, firstname, midterm midterm final, lettergrade
with openreporttxtw as reportfile:
for student in studentgrades:
reportfile.writetjoinmapstr student
# Calculate averages
midtermavg sumstudent for student in studentgrades lenstudentgrades
midtermavg sumstudent for student in studentgrades lenstudentgrades
finalavg sumstudent for student in studentgrades lenstudentgrades
reportfile.
error im getting in picture attached. in python please!
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
