Programming in Modern C++ | Week 5
Session: JULY-DEC 2023
Course Name: Programming in Modern C++
Course Link: Click Here
These are Nptel Programming in Modern C++ Assignment 5 Answers
Programming
Question 1
Consider the following program. Fill in the blanks as per the instructions given below:
• Complete the variable declaration at LINE-1,
• Complete the function prototype at LINE-2 and LINE-3 with appropriate keywords
such that it will satisfy the given test cases.
Solution:
class Cube : public Volume, public SurfaceArea { //LINE-1
int _a;
public:
Cube(int a) : _a(a) { }
double getVolume() { return Volume::getValue(_a); } //LINE-2
double getSurfaceArea() { return SurfaceArea::getValue(_a); } //LINE-3
};
These are Nptel Programming in Modern C++ Assignment 5 Answers
Question 2
Consider the following program. Fill in the blanks as per the instructions given below.
• at LINE-1 with appropriate forward declaration,
• at LINE-2 with appropriate statement
such that it will satisfy the given test cases
Solution:
#include <iostream>
using namespace std;
class Vehicle{
string vehicleName;
int noOfWheels;
protected:
Vehicle(string s, int w) : vehicleName(s), noOfWheels(w) { }
public:
friend void vehicleDetails(const Vehicle&);
};
class Twowheeler : public Vehicle{
public:
Twowheeler(string n) : Vehicle(n, 2) { }
};
class Fourwheeler : public Vehicle{
public:
Fourwheeler(string n) : Vehicle(n, 4) { }
};
These are Nptel Programming in Modern C++ Assignment 5 Answers
Question 3
Consider the following program. Fill in the blanks at LINE-1, LINE-2 and LINE-3 with appropriate statements such that it will satisfy the given test cases.
Solution:
class D : public B1, public B2 {
int d;
public:
D(int x) : B1(x+5), B2(x+10), d(x) {}
These are Nptel Programming in Modern C++ Assignment 5 Answers
More Weeks of Programming in Modern C++: Click here
More Nptel Courses: Click here
Session: JULY-DEC 2022
Course Name: Programming in Modern C++
Course Link: Click Here
These are Nptel Programming in Modern C++ Assignment 5 Answers
Quiz
Q1. Consider the following code segment.
What will be the output /error?
a) 6.75
b) 0
c) 675
d) Compilation error: no matching function for call to ’FDInterest::calculate()’
Answer: d) Compilation error: no matching function for call to ’FDInterest::calculate()’
Q2. Consider the following code segment.
What will be the output?
a) C Programming
C++ Programming
b) C++ Programming
C Programming
c) C Programming
C Programming
d) C++ Programming
C++ Programming
Answer: c) C Programming
C Programming
These are Nptel Programming in Modern C++ Assignment 5 Answers
Q3. Consider the following code segment.
What will be the output?
a) 1 2 3 -3 -2 -1
b) 1 1 2 3 -3 -1 -1
c) 1 3 -3 -1
d) 1 1 2 3 -3 -2 -1 -1
Answer: d) 1 1 2 3 -3 -2 -1 -1
Q4. Consider the following code segment.
Fill in the blank at LINE-1 so that the program will print Base.
a) Base::print();
b) Base.print();
c) (new Base)->print();
d) Base->print();
Answer: a, c
These are Nptel Programming in Modern C++ Assignment 5 Answers
Q5. Consider the following code segment.
What will be the output /error?
a) 5 10
b) 0 10
c) Compilation error generated from LINE-1
d) Compilation error generated from LINE-2
Answer: d) Compilation error generated from LINE-2
Q6. Consider the following code segment.
What will be the output?
a) A::2 B::2 C::2 A::3 B::3 C::3 A::1 B::1 C::1 ~C ~B ~A ~C ~B ~A ~C ~B ~A
b) A::2 B::2 C::2 A::3 B::3 C::3 ~C ~B ~A A::1 B::1 C::1 ~C ~B ~A ~C ~B ~A
c) C::2 B::2 A::2 C::3 B::3 A::3 C::1 B::1 A::1 ~C ~B ~A ~A ~B ~A ~C ~B ~A
d) C::2 B::2 A::2 C::3 B::3 A::3 C::1 B::1 A::1 ~A ~B ~C ~A ~B ~C ~A ~B ~C
Answer: b) A::2 B::2 C::2 A::3 B::3 C::3 ~C ~B ~A A::1 B::1 C::1 ~C ~B ~A ~C ~B ~A
These are Nptel Programming in Modern C++ Assignment 5 Answers
Q7. Consider the following code segment.
Fill in the blank at LINE-1 so that the program will print Base::£().
a) Base.obj.f()
b) Base.obj::f()
c) obj.Base::f()
d) Base::0bj.f()
Answer: c) obj.Base::f()
Q8. Consider the following code segment.
What will be the output /error?
a) Partha CSE
b) unknown CSE
c) Compilation error at LINE-1: void ’Staff::print1()’ is inaccessible in this context
d) Compilation error at LINE-2: void ’Staff::print2()’ is inaccessible in this context
Answer: c) Compilation error at LINE-1: void ’Staff::print1()’ is inaccessible in this context
These are Nptel Programming in Modern C++ Assignment 5 Answers
Q9. Consider the following code segment.
Fill in the blank at LINE-1 such that the program will print 10 20.
a) A2(_t1, _t2)
b) A2(_t2, _t1)
c) AL(_t1), A2(_t2)
d) A2(_t1), A2(_t1, _t2)
Answer: a) A2(_t1, _t2)
Programming Assignment of Programming in Modern C++
Question 1
Complete the program with the following instructions.
• Fill in the blank at LINE-1 with appropriate initializer list,
• Fill in the blanks at LINE-2 and LINE-3 to complete the return statements.
The program must satisfy the given test cases.
Solution:
class Sphere:public Volume,public Area{
public:
Sphere(int _r):Volume(_r), Area(_r){}
double getVolume(){
return Volume::getVal();
}
double getArea(){
return Area::getVal();
}
};
These are Nptel Programming in Modern C++ Assignment 5 Answers
Question 2
Consider the following program with the following instructions.
• Fill in the blank at LINE-1 with appropriate keyword.
• Fill in the blanks at LINE-2 and LINE-3 to complete the constructor statements.
The program must satisfy the sample input and output.
Solution:
#include <iostream>
using namespace std;
class Vehicle
{
public:
string vehicleName;
int noOfWheels;
Vehicle(string s,int w):vehicleName(s),noOfWheels(w)
{}
void vehicleDetails(const Vehicle&);
};
class Twowheeler:public Vehicle
{
public:
Twowheeler(string n):Vehicle(n,2)
{}
};
class Fourwheeler:public Vehicle
{
public:
Fourwheeler(string n):Vehicle(n, 4)
{}
};
These are Nptel Programming in Modern C++ Assignment 5 Answers
Question 3
Consider the following program. Fill in the blanks as per the instructions given below:
• Fill in the blank at LINE-1 to complete the inheritance statement.
• Fill in the blank at LINE-2 with the appropriate initializer list,
The program must satisfy the given test cases.
Solution:
class ReTest:public Test1,public Test2
{
int t;
public:
ReTest(int x):Test1(x+5),Test2(x+10),t(x)
{}
void show()
{
cout << t << ", " << t1 << ", " << t2;
}
};
These are Nptel Programming in Modern C++ Assignment 5 Answers
These are Nptel Programming in Modern C++ Assignment 5 Answers
More Solutions of Programming in Modern C++: Click Here
More NPTEL Solutions: https://progiez.com/nptel/

This content is uploaded for study, general information, and reference purpose only.