CS217 - Object-Oriented Programming (OOP) Assignment # 1: Carefully Read The Following Instructions!
CS217 - Object-Oriented Programming (OOP) Assignment # 1: Carefully Read The Following Instructions!
Spring-2020 (CS-Department)
It should be clear that your assignment would not get any credit if
the assignment is submitted after the due date. No assignment
will be accepted after the due date.
Strict action will be taken if submitted solution is copied from any
other student.
If you people find any mistake or confusion in assignment
(Question statement), please consult before the deadline. After
the deadline no queries will be entertained in this regard.
For any query, feel free to email at: basit.jasani@nu.edu.pk
Submission: Submission will only be accepted through SLATE.
Submit all your codes in a single folder name it as your Student ID
“KXX-XXXX”. The folder will contain four C++ program files as
Q1.cpp and Q2.cpp with proper commenting of the code.
Q1. Movie Rating System
Consider a class Movie that contains information about a movie. The class has the following attributes:
Implement the class with accessor and mutator functions for the movie name and MPAA rating. Write a
function addRating that takes an integer as an input parameter. The function should verify that the
parameter is a number between 1 and 5, and if so, increment the number of people rating the movie
that match the input parameter. For example, if 3 is the input parameter, then the number of people
that rated the movie as a 3 should be incremented by 1. Write another function, getAverage, that
returns the average value for all of the movie ratings. Finally, add a constructor that allows the
programmer to create the object with a specified name and MPAA rating. The number of people rating
the movie should be set to 0 in the constructor. Test the class by writing a main function that creates at
least two movie objects, adds at least five ratings for each movie, and outputs the movie name, MPAA
rating, and average rating for each movie object.
While exercising, you can use a heart-rate monitor to see that your heart rate stays within a safe range
suggested by your trainers and doctors. According to the American Heart Association (AHA)
(www.americanheart.org/presenter.jhtml?identifier=4736), the formula for calculating your maximum
heart rate in beats per minute is 220 minus your age in years. Your target heart rate is a range that is
50–85% of your maximum heart rate. [Note: These formulas are estimates provided by the AHA.
Maximum and target heart rates may vary based on the health, fitness and gender of the individual.
Always consult a physician or qualified health care professional before beginning or modifying an
exercise program.] Create a class called HeartRates. The class attributes should include the person’s first
name, last name and date of birth (consisting of separate attributes for the month, day and year of
birth). Your class should have a constructor that receives this data as parameters. For each attribute
provide set and get functions. The class also should include a function getAge that calculates and returns
the person’s age (in years), a function getMaxiumumHeartRate that calculates and returns the person’s
maximum heart rate and a function getTargetHeartRate that calculates and returns the person’s target
heart rate. Since you do not yet know how to obtain the current date from the computer, function
getAge should prompt the user to enter the current month, day and year before calculating the person’s
age. Write an application that prompts for the person’s information, instantiates an object of class
HeartRates and prints the information from that object—including the person’s first name, last name
and date of birth—then calculates and prints the person’s age in (years), maximum heart rate and
target-heart-rate range.