|
Assignment No. 03
Semester: Fall 2016 Object Oriented Programming – CS304 |
Total
Marks: 20
Due Date: 13th Jan, 2017
|
||||||||||||||
Objectives:
To get a hands on experience in implementing member
initialization list, Inheritance and overriding functions in Object oriented
Programming
Instructions:
Please
read the following instructions carefully before submitting assignment:
It
should be clear that your assignment will not get any credit if:
§
The assignment is
submitted after due date.
§
The assignment is
submitted via email.
§
The assignment is copied
from Internet or from any other student.
§
The submitted assignment
does not open or file is corrupt.
§ It is in some
format other than .cpp (Code File).
Note: All types of plagiarism are strictly prohibited.
For
any query about the assignment, contact at CS304@vu.edu.pk
|
||||||||||||||||
|
||||||||||||||||
Problem Statement:
Consider the following part of class
diagram in continuation of previous assignments.
Class
Diagram
The distance from the sun for all
the planets is calculated as the distance from the Earth to the Sun (the AU),
where AU is the unit of distance and 1 AU = 150,000,000 km
Following table shows distance of
planets from the Sun in AU.
Distance of planet from sun in Kilometer
(KM) can be calculated by multiplying distance with the value of AU. For
example, If you want to calculate the distance of earth from sun in KM then;
Distance = 1*150,000,00 = 150,000,000
Tasks you have to do:
1.
Keeping in view the above given
class diagram and scenario, you have to write code for the below mentioned classes and implement their relationship with each other.
2.
As Cal_Distance() function will implement the same formula for all
inner and outer planets, so you are required to implement this function in Planet class only.
3.
You are also required to
calculate the distance of Mercury from Sun in Kilometers.
4. 1. Class Planet:
Attribute:
Name:
string
Radius:
double
Distance:
double
Methods/Operations/Getters/Setters:
Print:
void
Cal_Distance:
double
2.
Class Inner_Planet:
Methods/Operations/Getters/Setters:
Print:
void
Cal_Distance:
double
3.
Class Mercury:
Methods/Operations/Getters/Setters:
Print:
void
Cal_Distance:
double
Important
points:
·
Your program should be able to
create an object for Mercury class
having a Name, Radius and Distance without creating an explicit object of Planet class.
·
All Planet attributes should be directly accessible to Inner_Planet and Mercury and should not be accessible publically.
·
Definition of both functions,
Print() and Cal_Distance(), should be included in Planet class. Override these functions in Inner_Planet and Mercury
classes.
·
Display the values of attributes and
calculated distance as shown in sample output.
Note:
1.
Radius of Mercury is 2440 KM.
2.
Use Member Initialization list
where needed.
3.
You main function should look
like this;
Sample
Output:
|
||||||||||||||||
Lectures
Covered:
This
assignment covers Lecture # 22-25
Deadline: Your assignment must be
uploaded/submitted at or before January
13, 2017
|
||||||||||||||||
BEST OF LUCK
|
Solution :
Comments
Post a Comment