-
Notifications
You must be signed in to change notification settings - Fork 32
/
final-prob5.py
107 lines (81 loc) · 2.75 KB
/
final-prob5.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# final-prob5.py
#
# Final Exam, Problem 5
#
# edX MITx 6.00.1x
# Introduction to Computer Science and Programming Using Python
"""
Fill in the code for setGrade, getGrade, setPset, and getPset, using the
courseInfo class functions. Paste your entire definition of the edx class
in the following box.
"""
class courseInfo(object):
def __init__(self, courseName):
self.courseName = courseName
self.psetsDone = []
self.grade = "No Grade"
def setPset(self, pset, score):
self.psetsDone.append((pset, score))
def getPset(self, pset):
for (p, score) in self.psetsDone:
if p == pset:
return score
def setGrade(self, grade):
if self.grade == "No Grade":
self.grade = grade
def getGrade(self):
return self.grade
class edx(object):
def __init__(self, courses):
self.myCourses = []
for course in courses:
self.myCourses.append(courseInfo(course))
def setGrade(self, grade, course="6.01x"):
"""
grade: integer greater than or equal to 0 and less than or equal to 100
course: string
This method sets the grade in the courseInfo object named by `course`.
If `course` was not part of the initialization, then no grade is set, and no
error is thrown.
The method does not return a value.
"""
# fill in code to set the grade
pass
def getGrade(self, course="6.02x"):
"""
course: string
This method gets the grade in the the courseInfo object named by `course`.
returns: the integer grade for `course`.
If `course` was not part of the initialization, returns -1.
"""
# fill in code to get the grade
pass
def setPset(self, pset, score, course="6.00x"):
"""
pset: a string or a number
score: an integer between 0 and 100
course: string
The `score` of the specified `pset` is set for the
given `course` using the courseInfo object.
If `course` is not part of the initialization, then no pset score is set,
and no error is thrown.
"""
# fill in code to set the pset
pass
def getPset(self, pset, course="6.00x"):
"""
pset: a string or a number
course: string
returns: The score of the specified `pset` of the given
`course` using the courseInfo object.
If `course` was not part of the initialization, returns -1.
"""
# fill in code to get the pset
pass
edX = edx( ["6.00x","6.01x","6.02x"] )
edX.setPset(1,100)
edX.setPset(2,100,"6.00x")
edX.setPset(2,90,"6.00x")
edX.setGrade(100)
for c in ["6.00x","6.01x","6.02x"]:
edX.setGrade(90,c)