ENCT 151Bachelor in Electronics, Communication and Information Engineering ยท Semester 22 Papers Available

Object Oriented Programming

Past examination question papers and complete curriculum syllabus for Object Oriented Programming (ENCT 151), Bachelor in Electronics, Communication and Information Engineering Semester 2 under Institute of Engineering (IOE), Tribhuvan University.

Past Question Papers (PDF)

Switch tabs to view different exam papers
Available Papers:

2nd-sem_Object Oriented Programming.pdf

IOE Past Examination Paper

Download PDF
Served via fast CDN. Read in full view or download for offline study.

Document information: This past examination paper is identified as an IOE/TU academic document and was cataloged from a public Google Drive archive. This independent website did not create the examination paper and is not affiliated with TU or IOE.

Rights holders can request correction or removal by emailing subeshgaming@gmail.com with this page URL and supporting details.

Most Frequently Asked Questions

Top recurring IOE board exam questions for Object Oriented Programming with verified mark schemes, formula notation, and recurrence frequency.

Showing 30 of 30 top repeated questions

Introduction to Object Oriented Programming

2 Questions
#1Asked in 11 Exam Sessions[4 Marks]Introduction to Object Oriented Programming
What is the drawback of procedural programming and advantage of object-oriented programming? Compare procedure-oriented programming and object-oriented programming with the basic concepts and features of OOP.
Appeared in:2082 Bhadra2082 Baishakh2081 Ashwin2080 Baishakh2079 Bhadra2078 Bhadra2075 Ashwin2074 Ashwin2072 Chaitra2070 Chaitra2068 Chaitra
#2Repeated 2 Times[6 Marks]Introduction to Object Oriented Programming
Explain the core features of Object-Oriented Programming: Data Abstraction, Encapsulation, Inheritance, and Polymorphism. Differentiate between procedure-oriented programming and object-oriented programming.
Appeared in:2082 Baishakh2081 Bhadra

Basics of C++ Programming

3 Questions
#1Asked in 7 Exam Sessions[7 Marks]Basics of C++ Programming
When do we use default arguments in functions? When can conflict occur when default arguments and function overloading are used together? Write a C++ program to illustrate the concept of default arguments.
Appeared in:2082 Bhadra2081 Ashwin2080 Baishakh2078 Bhadra2075 Ashwin2073 Shrawan2069 Chaitra
#2Asked in 7 Exam Sessions[7 Marks]Basics of C++ Programming
When should you prefer the use of inline functions? Explain with example. Explain function overloading in object-oriented programming and how the compiler resolves overloaded functions.
Appeared in:2082 Baishakh2080 Bhadra2079 Bhadra2076 Chaitra2074 Ashwin2071 Chaitra2068 Baishakh
#3Repeated 2 Times[6 Marks]Basics of C++ Programming
Explain function overloading, default arguments, and inline functions in C++ with examples. What are the rules and precautions when using inline functions?
Appeared in:2082 Shrawan2079 Baishakh

Objects and Classes

5 Questions
#1Asked in 8 Exam Sessions[8 Marks]Objects and Classes
Explain friend function and with program code, show how a friend function can be used to make a bridge between two classes. What is a friend class and when can a class be made friend?
Appeared in:2082 Bhadra2082 Baishakh2081 Ashwin2080 Baishakh2078 Bhadra2075 Ashwin2072 Chaitra2069 Chaitra
#2Asked in 8 Exam Sessions[8 Marks]Objects and Classes
What do you mean by a constructor? Explain different types of constructors in C++ (default, parameterized, and copy constructor) with syntax and examples. Why must the argument of a copy constructor be passed by reference?
Appeared in:2082 Baishakh2080 Baishakh2079 Bhadra2078 Bhadra2076 Chaitra2074 Ashwin2070 Chaitra2068 Chaitra
#3Asked in 7 Exam Sessions[7 Marks]Objects and Classes
Create a class 'Time' with data members hour, minute, and second. Write a constructor to initialize time objects and a member function that adds two Time objects passed as arguments and displays the aggregate result (applying 60 seconds = 1 minute, 60 minutes = 1 hour).
Appeared in:2082 Baishakh2081 Ashwin2080 Bhadra2078 Bhadra2075 Ashwin2072 Chaitra2068 Baishakh
#4Repeated 2 Times[8 Marks]Objects and Classes
Explain constructors and destructors in C++. What are copy constructors and parameterized constructors? Write a C++ program to illustrate deep copy versus shallow copy.
Appeared in:2082 Baishakh2081 Bhadra
#5Repeated 2 Times[6 Marks]Objects and Classes
What are static data members and static member functions in C++? Explain with a complete program how a static variable keeps track of the total number of active objects.
Appeared in:2081 Bhadra2078 Bhadra

Operator Overloading

4 Questions
#1Asked in 9 Exam Sessions[7 Marks]Operator Overloading
What is operator overloading? List down the rules of operator overloading. Write a program to overload binary operators (+, -, *) using member functions or friend functions to perform arithmetic on complex numbers with real and imaginary parts.
Appeared in:2082 Bhadra2082 Baishakh2081 Ashwin2080 Baishakh2079 Bhadra2076 Chaitra2074 Ashwin2070 Ashad2068 Chaitra
#2Repeated 6 Times[7 Marks]Operator Overloading
Explain different ways binary operator overloading is performed. Using a class to model a 3x3 matrix, overload the + and - operators to add and subtract two matrices.
Appeared in:2080 Baishakh2078 Bhadra2075 Ashwin2073 Shrawan2071 Chaitra2069 Chaitra
#3Repeated 2 Times[8 Marks]Operator Overloading
What is operator overloading? Write a program in C++ to overload the binary `+` operator to add two complex numbers using member function and friend function.
Appeared in:2082 Baishakh2080 Bhadra
#4Repeated 2 Times[8 Marks]Operator Overloading
Explain data conversion between basic type to user-defined type, and user-defined type to user-defined type in C++. Write a program to convert distance from Celsius to Fahrenheit using conversion routine.
Appeared in:2081 Bhadra2079 Bhadra

Inheritance

4 Questions
#1Asked in 8 Exam Sessions[7 Marks]Inheritance
What is multipath inheritance (the diamond problem) in C++? Explain how ambiguity due to multipath inheritance is resolved using virtual base classes with a code example.
Appeared in:2081 Ashwin2080 Baishakh2079 Bhadra2078 Bhadra2075 Ashwin2074 Ashwin2072 Chaitra2070 Chaitra
#2Asked in 7 Exam Sessions[7 Marks]Inheritance
Explain different forms of inheritance with an example for each. Create a class Person with data members to identify a person and inherit it to create a class Student. Demonstrate function overriding and constructor invocation order in inheritance.
Appeared in:2082 Bhadra2082 Baishakh2080 Bhadra2076 Chaitra2073 Shrawan2070 Ashad2068 Chaitra
#3Repeated 2 Times[8 Marks]Inheritance
Explain the ambiguity that arises in multipath (diamond) inheritance. How is this ambiguity resolved using virtual base classes in C++? Illustrate with a program.
Appeared in:2082 Shrawan2081 Bhadra
#4Repeated 2 Times[8 Marks]Inheritance
Explain order of constructor and destructor invocation in derived classes with multiple inheritance. Write a program to demonstrate passing arguments to base class constructors from derived class.
Appeared in:2082 Baishakh2078 Bhadra

Virtual Functions

4 Questions
#1Asked in 8 Exam Sessions[5 Marks]Virtual Functions
Why do you need a virtual destructor? Distinguish between early binding and late binding, and explain runtime polymorphism using virtual functions with an example of an Employee base class and derived Manager class.
Appeared in:2082 Bhadra2082 Baishakh2081 Ashwin2080 Baishakh2079 Bhadra2078 Bhadra2075 Ashwin2071 Chaitra
#2Asked in 8 Exam Sessions[5 Marks]Virtual Functions
What is an abstract class? Define pure virtual function with suitable syntax and example. Why cannot an abstract class be instantiated directly?
Appeared in:2082 Baishakh2081 Ashwin2080 Bhadra2078 Bhadra2076 Chaitra2074 Ashwin2072 Chaitra2069 Chaitra
#3Repeated 2 Times[8 Marks]Virtual Functions
What are pure virtual functions and abstract classes? Write a C++ program having base class `Shape` and derived classes `Rectangle` and `Circle` to calculate area using runtime polymorphism.
Appeared in:2081 Bhadra2082 Baishakh
#4Repeated 2 Times[6 Marks]Virtual Functions
What is a virtual destructor? Why is it essential to make a base class destructor virtual when deleting derived objects through a base pointer? Illustrate with an example.
Appeared in:2082 Shrawan2080 Baishakh

Stream Computation

4 Questions
#1Asked in 9 Exam Sessions[8 Marks]Stream Computation
What are the different types of file modes used in C++? Write a program with a class to represent an employee or student having data members (name, id, age, salary). Write records to a file, read them, and search a specific record using employee id or roll_no as a key.
Appeared in:2082 Bhadra2082 Baishakh2081 Ashwin2080 Baishakh2079 Bhadra2078 Bhadra2075 Ashwin2073 Shrawan2070 Chaitra
#2Repeated 6 Times[6 Marks]Stream Computation
How is random access of data in files handled in C++? Explain the functions seekg(), seekp(), tellg(), and tellp() with their file positioning offset constants (ios::beg, ios::cur, ios::end).
Appeared in:2082 Baishakh2080 Baishakh2078 Bhadra2076 Chaitra2074 Ashwin2071 Chaitra
#3Repeated 2 Times[8 Marks]Stream Computation
Explain file stream classes (`ifstream`, `ofstream`, `fstream`) and file opening modes in C++. Write a program to read a text file character by character and count the total number of words, characters, and lines.
Appeared in:2081 Bhadra2082 Baishakh
#4Repeated 2 Times[8 Marks]Stream Computation
Explain file pointers (`seekg`, `seekp`, `tellg`, `tellp`). Write a program to update an existing student record in a binary file using random access file operations.
Appeared in:2082 Baishakh2079 Baishakh

Templates

2 Questions
#1Asked in 8 Exam Sessions[8 Marks]Templates
Why are templates in C++ referred to as a form of generic programming? Show with an example how we eliminate code redundancy using templates. Write a program to read n numbers of any data type and sort them in descending order using a function template.
Appeared in:2082 Bhadra2082 Baishakh2080 Baishakh2079 Bhadra2078 Bhadra2075 Ashwin2074 Ashwin2070 Ashad
#2Repeated 2 Times[8 Marks]Templates
Why do we need templates in C++? Write a generic class template for a Stack with `push()`, `pop()`, and `display()` member functions, handling both integers and floating-point types.
Appeared in:2081 Bhadra2082 Shrawan

Exception Handling

2 Questions
#1Asked in 8 Exam Sessions[5 Marks]Exception Handling
Explain exception handling along with its handling constructs (try, catch, throw). Develop a C++ program that shows multiple exception handling scenarios (e.g., catching invalid negative input, division by zero, or testing validity before computing square root).
Appeared in:2082 Bhadra2082 Baishakh2081 Ashwin2080 Baishakh2079 Bhadra2078 Bhadra2076 Chaitra2073 Shrawan
#2Repeated 2 Times[6 Marks]Exception Handling
Explain the `try`, `catch`, and `throw` exception handling mechanism in C++. How does it handle multiple catch blocks and catch-all (`catch(...)`) handlers? Write a program to handle divide-by-zero exception.
Appeared in:2081 Bhadra2082 Baishakh

Curriculum Syllabus & Course Topics

Sourced from TU curriculum portal
Chapter-wise Units & Micro-Syllabus Topics (9 Units)
  1. 1. Introduction to Object Oriented Programming

    • 1.1History of programming languages
    • 1.2Need of object oriented programming(OOP)
    • 1.3Object oriented programming versus procedure oriented programming
    • 1.4Concepts of object oriented programming
    • 1.5P opular object oriented languages
    • 1.6Advantages of OOP
    • 1.7Disadvantages of OOP
  2. 2. Basics of C++ Programming

    • 2.1C++ Program structure
    • 2.2Character set and tokens
    • 2.3Variable declaration and expression
    • 2.4Data types
    • 2.5Type conversion and casting
    • 2.6User defined constant const
    • 2.8Conditions and looping
    • 2.9Namespace scope
    • 2.10Functions
    • 2.10.1Function overloading
    • 2.10.2Inline function
    • 2.10.3Default arguments
    • 2.10.4Pass by reference and return by reference
    • 2.11Array, pointer and string
    • 2.12Structure and unions
    • 2.13Enumeration
    • 2.14Dynamic memory allocation
  3. 3. Objects and Classes

    • 3.1C++ classes
    • 3.2Objects and the member access
    • 3.3Relation of object, class and memory
    • 3.4Defining member function
    • 3.5Defining outer function inline
    • 3.6Objects as member
    • 3.7Constructors and destructors
    • 3.8Object as function arguments
    • 3.9Returning objects from functions
    • 3.10Array of objects
    • 3.11Pointer to objects
    • 3.12Dynamic memory allocation for objects
    • 3.13Dynamic constructors
    • 3.14Pointer
    • 3.15Static data member and static member function
    • 3.16Constant member functions and constant objects
    • 3.17Friend functions and friend classes
  4. 4. Operator Overloading

    • 4.1Overloadable and non- overloadable operators
    • 4.2Syntax of operator overloading
    • 4.3Operator overloading using member operator functions
    • 4.4Operator overloading using non member functions
    • 4.5Unary operator overloading
    • 4.6Binary operator overloading
    • 4.7Type conversion between objects
    • 4.8Explicit constructors
  5. 5. Inheritance

    • 5.1Base class and derived class
    • 5.2protected access specifier
    • 5.3Derived class declaration
    • 5.4Is_a relation and Has_a relation
    • 5.5Public, protected and private inheritance
    • 5.6Member overriding
    • 5.7Forms of inheritance
    • 5.8Constructors in derived class
    • 5.9Destructor in derived class
    • 5.10Need of virtual base class
  6. 6. Virtual Functions

    • 6.1What is virtual function
    • 6.2Need of virtual function
    • 6.3Pointer to derived class
    • 6.4Array of pointers to base class
    • 6.5Pure virtual functions and abstract class
    • 6.6Virtual destructors
    • 6.7Reinterpret cast operator
    • 6.8Run-time type information
  7. 7. Stream Computation

    • 7.1Input/output stream class hierarchy
    • 7.2Testing stream errors
    • 7.3Unformatted input/output and formatted input/output
    • 7.4Stream operator overloading
    • 7.5File input/output with streams
    • 7.6File stream class hierarchy
    • 7.7ASCII and binary files
    • 7.8Read/Write from file
    • 7.9Sequential access to file
    • 7.10Random access to file
    • 7.11File access pointers and their manipulators
    • 7.12Testing errors during file operations
    • 7.13File input/output with member functions
  8. 8. Templates

    • 8.1Function template
    • 8.2Overloading function template
    • 8.3Class template
    • 8.4Derived class template
    • 8.5Introduction to standard template library
    • 8.5.1Components of STL
    • 8.5.2Container
    • 8.5.3Iterators
    • 8.5.4Algorithms
  9. 9. Exception Handling

    • 9.1Basics of exception handling
    • 9.2Advantage over conventional error handling
    • 9.3Exception handling mechanism
    • 9.4Multiple handlers
    • 9.5Catching all exceptions
    • 9.6Rethrowing exception
    • 9.7Exception with arguments
    • 9.8Exceptions specification for function
    • 9.9Exceptions in constructors and destructors
    • 9.10Handling uncaught exceptions
    • 9.11Handling unexpected exception

Examination Scheme & Marks Distribution

Evaluation Structure

  • Final Board Theory Exam: 60 Marks (Pass mark: 24)
  • Internal Assessment: 40 Marks (Pass mark: 16)
  • Practical / Lab Exam: 25 or 50 Marks (Continuous lab evaluation + viva, where applicable)

* This is the general current IOE 60/40 scheme; verify course-specific details in the syllabus above.

Exam Preparation Guidelines

  • Review the 2 available past examination papers to identify recurring patterns, core problem types, and chapter weightage.
  • Practice writing clean algorithms and code implementations, tracing dry runs with sample inputs, and explaining complexity trade-offs.
  • Structure answers with labeled diagrams, concise bullet points, and highlight final answers in numerical solutions.

Frequently Asked Questions (Object Oriented Programming)

Q: How can I download Object Oriented Programming past question papers?

You can preview or download the Object Oriented Programming question papers (PDF) directly using the built-in viewer on this page with zero redirects or paywalls.

Q: What is the pass mark for Object Oriented Programming?

The general current scheme is a 60-mark final theory exam and a 40-mark internal assessment, with pass marks of 24 and 16. Verify the course-specific syllabus above.

Q: Where can I find the complete syllabus for this subject?

The available chapter-wise syllabus and topic breakdown is indexed in the Syllabus section above, with links to the curriculum PDF source.

Authentic IOE Past Papers
Free Direct PDF Download
Curriculum Syllabus & Marking Scheme