-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtut40.cpp
More file actions
65 lines (62 loc) · 1.27 KB
/
tut40.cpp
File metadata and controls
65 lines (62 loc) · 1.27 KB
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
#include <iostream>
using namespace std;
class Student
{
protected:
int roll_number;
public:
void set_roll_number(int);
void get_roll_number(void);
};
void Student::set_roll_number(int r)
{
roll_number = r;
}
void Student::get_roll_number(void)
{
cout << "The roll number is " << roll_number << endl;
}
class Exam : public Student
{
protected:
float maths;
float biology;
public:
void set_marks(float, float);
void get_marks(void);
};
void Exam::set_marks(float m1, float m2)
{
maths = m1;
biology = m2;
}
void Exam::get_marks(void)
{
cout << "The maths marks are " << maths << endl;
cout << "The biology marks are " << biology << endl;
}
class Result : public Exam
{
float percentage;
public:
void display_marks(void)
{
get_roll_number();
get_marks();
float percentage = (maths + biology) / 2;
cout << "Your percentage is " <<percentage<< "%" << endl;
}
};
int main()
{
/*
If we are inheriting B from A and C from B: [ A--->B--->C ]
1. A is base class for B and B is base class for C
2. A--->B--->C is called Inheritance Path
*/
Result vighnesh;
vighnesh.set_roll_number(69);
vighnesh.set_marks(98, 96);
vighnesh.display_marks();
return 0;
}