This assignment is supposed to represent a group of students in a course. A group of students in a course will be assigned an assignment and produce a collection of assignment results. The results will be used to figure out grade statistics. The grade they receive for their work on the assignment is entirely dependant on the student's energy level. If the student works on many assignments without sleeping their grade will suffer. You will implement four classes (Assignment, AssignmentResult, Student, and Course), they will depend on each other in the order they are listed. Hint: Work on the methods in the order they are found in the documentation below, implement the g
This assignment is supposed to represent a group of students in a course. A group of students in a course will be assigned an assignment and produce a collection of assignment results. The results will be used to figure out grade statistics. The grade they receive for their work on the assignment is entirely dependant on the student's energy level. If the student works on many assignments without sleeping their grade will suffer. You will implement four classes (Assignment, AssignmentResult, Student, and Course), they will depend on each other in the order they are listed. Hint: Work on the methods in the order they are found in the documentation below, implement the g
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Concept explainers
OOPs
In today's technology-driven world, computer programming skills are in high demand. The object-oriented programming (OOP) approach is very much useful while designing and maintaining software programs. Object-oriented programming (OOP) is a basic programming paradigm that almost every developer has used at some stage in their career.
Constructor
The easiest way to think of a constructor in object-oriented programming (OOP) languages is:
Question
This assignment is supposed to represent a group of students in a course. A group of students in a course will be assigned an assignment and produce a collection of assignment results. The results will be used to figure out grade statistics. The grade they receive for their work on the assignment is entirely dependant on the student's energy level. If the student works on many assignments without sleeping their grade will suffer. You will implement four classes (Assignment, AssignmentResult, Student, and Course), they will depend on each other in the order they are listed.
Hint: Work on the methods in the order they are found in the documentation below, implement the getter and setter methods before the more complicated methods. Work on the Assignment class, AssignmentResult class, Student class and Course class in that order.
Make sure you don't name your class variables the same name as you class's methods. In other words if you have method named id you cannot have a class variable named self.id. To avoid name conflicts often developers will start the name of their class variables with 2 underscores "_". For example self.__id = 123
Class Course
This class represents a course that a group of students is enrolled in. They will be assigned assignments when enrolled in this course. This object will be used to calculate aggregate student statistics.
__init__(self, students: list):
"""
Constructs a course with the specified list of students (student objects)
:param students: A list containing one or more students
"""
get_mean_grade(self) -> float:
"""
Returns the numerical value of the class mean (average) grade.
:return: The average student grade
"""
get_max_grade(self) -> float:
"""
Returns the highest grade in the class.
The grades used in the calculation come from the student.grade(), it does not care if a grade was earned
when the student was in another class.
:return: The highest grade in the class
"""
get_min_grade(self):
"""
Returns the lowest grade in the class.
The grades used in the calculation come from the student.grade(), it does not care if a grade was earned
when the student was in another class.
:return: The lowest grade in the class
"""
get_median_grade(self) -> float:
"""
Calculates and returns the median (middle value) of all the student's grades in this course
The grades used in the calculation come from the student.grade(), it does not care if a grade was earned
when the student was in another class.
:return: The median grade
"""
get_grade_variance(self) -> float:
"""
Calculates and returns the sample variance of all the student's grades in this course
The grades used in the calculation come from the student.grade(), it does not care if a grade was earned
when the student was in another class.
:return: The sample variance of the grades
"""
grade_std_dev(self) -> float:
"""
Calculates and returns the sample standard deviation of all the student's grades in this course.
The grades used in the calculation come from the student.grade(), it does not care if a grade was earned
when the student was in another class.
:return: The sample standard deviation of the grades
"""
assign(self, name: str, difficulty: float) -> None:
"""
This creates an assignment using the parameters specified, then assigns it to all of the students in this
course, by calling the assign method on each student. Subsequent invocations to the statistics methods above
should reflect the changes made by this method after it is called. In other words if a very difficult
assignment is assigned the course mean should be less after.
:param name: The name of the assignment
:param difficulty: The level of difficulty of the assignment
:return: None
"""
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education