Friends(C++ Programming ) Questions and Answers
What is the output of this program?
1.
#include
2.
using namespace std;
3.
class sample
4.
{
5.
private:
6.
int a, b;
7.
public:
8.
void test()
9.
{
10.
a = 100;
11.
b = 200;
12.
}
13.
friend int compute(sample e1);
14.
};
15.
int compute(sample e1)
16.
{
17.
return int(e1.a + e1.b) - 5;
18.
}
19.
int main()
20.
{
21.
sample e;
22.
e.test();
23.
cout
Explanation:-
Answer: Option D. -> 295In this program, we are finding a value from the given function by using the friend for compute function.
Output:
$ g++ friend4.cpp
$ a.out
295
What is the output of this program?
1.
#include
2.
using namespace std;
3.
class base
4.
{
5.
int val1, val2;
6.
public:
7.
int get()
8.
{
9.
val1 = 100;
10.
val2 = 300;
11.
}
12.
friend float mean(base ob);
13.
};
14.
float mean(base ob)
15.
{
16.
return float(ob.val1 + ob.val2) / 2;
17.
}
18.
int main()
19.
{
20.
base obj;
21.
obj.get();
22.
cout << mean(obj);
23.
return 0;
24.
}
Explanation:-
Answer: Option A. -> 200In this program, We are finding the mean value by declaring the function mean as a friend of class base.
Output:
$ g++ friend3.cpp
$ a.out
200
What is the output of this program?
1.
#include
2.
using namespace std;
3.
class sample;
4.
class sample1
5.
{
6.
int width, height;
7.
public:
8.
int area ()
9.
{
10.
return (width * height);}
11.
void convert (sample a);
12.
};
13.
class sample
14.
{
15.
private:
16.
int side;
17.
public:
18.
void set_side (int a)
19.
{
20.
side = a;
21.
}
22.
friend class sample1;
23.
};
24.
void sample1::convert (sample a)
25.
{
26.
width = a.side;
27.
height = a.side;
28.
}
29.
int main ()
30.
{
31.
sample sqr;
32.
sample1 rect;
33.
sqr.set_side(6);
34.
rect.convert(sqr);
35.
cout
Explanation:-
Answer: Option D. -> 36In this program, we are using the friend for the class and calculating the area of the square.
Output:
$ g++ friend2.cpp
$ a.out
36
What is the output of this program?
1.
#include
2.
using namespace std;
3.
class sample
4.
{
5.
int width, height;
6.
public:
7.
void set_values (int, int);
8.
int area () {return (width * height);}
9.
friend sample duplicate (sample);
10.
};
11.
void sample::set_values (int a, int b)
12.
{
13.
width = a;
14.
height = b;
15.
}
16.
sample duplicate (sample rectparam)
17.
{
18.
sample rectres;
19.
rectres.width = rectparam.width * 2;
20.
rectres.height = rectparam.height * 2;
21.
return (rectres);
22.
}
23.
int main ()
24.
{
25.
sample rect, rectb;
26.
rect.set_values (2, 3);
27.
rectb = duplicate (rect);
28.
cout
Explanation:-
Answer: Option C. -> 24In this program, we are using the friend function for duplicate function and calculating the area
of the rectangle.
Output:
$ g++ friend1.cpp
$ a.out
24
What is the output of this program?
1.
#include
2.
using namespace std;
3.
class Box
4.
{
5.
double width;
6.
public:
7.
friend void printWidth( Box box );
8.
void setWidth( double wid );
9.
};
10.
void Box::setWidth( double wid )
11.
{
12.
width = wid;
13.
}
14.
void printWidth( Box box )
15.
{
16.
box.width = box.width * 2;
17.
cout
Explanation:-
Answer: Option D. -> 20We are using the friend function for printwidth and multiplied the width value by 2, So we got the output as 20
Output:
$ g++ friend.cpp
$ a.out
20