C++ - Course - Delivery Plan
C++ - Course - Delivery Plan
COURSE MANUAL
OBJECT ORIENTED
PROGRAMMING using C++
COURSE CODE: BCA 205
SEMESTER – III
PREPARED BY:
Course Manual
Table of Contents
Subject: Object Oriented Programming using C++ Semester: III
1. Syllabus
3. Assignments
SYLLABUS
UNIT – I
No. of Hours: 10 Chapter / Book Reference: TB1 [Chapters 1, 2], TB2 [Chapters 1, 2,3]
Object Oriented Paradigm: Procedural vs. object-oriented development, basic concepts of object-oriented
programming, applications and benefits of OOP, comparison between C and C++.
Beginning with C++: Stream based I/O, literals- constant qualifiers, operators in C++, reference variable,
functions, default arguments, parameter passing by value, reference and pointer, inline functions, type
conversion, basic C++ programs, new, delete operators- basic use and dynamic memory allocation for arrays.
UNIT – II
No. of Hours: 11 Chapter / Book Reference: TB1 [Chapters 10, 11], TB2 [Chapters 5, 6]
Classes and Objects: C++ class declaration, access specifiers, member functions, arrays within a class, array of
objects, memory allocation of objects, passing objects as arguments, returning objects from functions, function
overloading, static data and member functions, friend function and friend class, this pointer
UNIT – III
No. of Hours: 12 Chapter/Book Reference: TB1 [Chapters 13, 14, 15], TB2 [Chapters 7,8,9]
Inheritance: Types of inheritance, derivation – public, private & protected, ambiguity resolution (function
overriding), aggregation, composition v/s classification, virtual base class, constructor and destructor in derived
classes.
Polymorphism: Types of polymorphism, early v/s late binding, Virtual Functions: Need for virtual functions,
pointer to derived class objects, pure virtual functions, abstract classes.
Operator Overloading: Overloading unary operators, nameless objects, overloading binary operators,
overloading with friend functions, conversion between basic types and user-defined types.
UNIT – IV
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapters 16, 17, 18, 19]
TB2 [Chapters 11,12,13 ]
Parametric polymorphism: Generic Programming with Templates, Introduction, function templates/generic
functions, characteristics, overloading of template functions, class templates, template arguments.
Exception Handling: Exception-handling model, types of exception, catching and handling exceptions, generic
catch, rethrowing an exception, specifying exceptions for a function.
Streams &Files: C++ Streams, basic stream classes, C++ predefined streams, I/O operations, unformatted
console I/O operations, manipulators, opening and closing a file- different modes and methods, error handling
during file operations, file pointers and their manipulations, sequential access to file, random input and output
operations, persistent objects, command line arguments.
TEXT BOOKS:
TB1 K.R. Venugopal, Rajkumar, T. Ravishanker, “Mastering C++”, TMH
TB2 E. Balagurusamy, “Object Oriented Programming with C++”, McGraw-Hill Education
REFERENCE BOOKS:
RB1 Ashok N. Kamthane, “Object-Oriented Programming with ANSI And Turbo C++”, Pearson Education.
RB2 Schildt Herbert, “C++: The Complete Reference”, Tata McGraw Hill.
RB3 R. Lafore, “Object Oriented Programming using C++”, Galgotia Publications.
e-journals
1. International Journal of Computer Engineering in Research Trends
Journals
1. Prof. Chetashri S. Bhusari, Prof. Shonal A Vaz, Prof. Supriya Angne: International Journal of Scientific Research,
17–20 (2019)
Magazines
1. C-Scene: The C/C++ Freezine
Websites
1.https://www.t cplusplus.com/
2.C++ Tutorial (w3schools.com)
3.Standard C++ (isocpp.org)
Jagannath International Management School
Vasant Kunj, New Delhi-110070
(Affiliated to Guru Gobind Singh Indraprastha University, New Delhi)
Recognized u/s 2(f) by UGC & Accredited with ‘A+’ Grade by NAAC
Participant of UNGC New York and ISO 9001:2015 Quality Certified
PRE-REQUISITES:
2. Knowledge of C programming
3. Basic Programming Skills
On successful completion of This course helps you to develop the This learning outcome
the course, students should following Program Outcomes: will be assessed in the
be able to: following items
CO1: PO2, PO3 A1, A2, A3, A4, A5
Evaluation Schema
Methodology:
The pedagogy will be lectures, Power Point presentations and exercises.
Audio visual aids will be used extensively during the course.
We are also using online editors, severs as teaching aids.
Evaluation:
The students will be continuously assessed during the course on the following basis:-
Videos
5%
Classroom Lec-
tures
60%
Powerpoint
Presentation
20%
Evaluation Schema
The course grade will be determined on the basis of
Assessment Assessment Weightage Nature Week of POs to be
Item Task Assessment Assessed
A1 Class 5% Individual/ Week 4 PO1,PO2,PO3,
Participation Group PO5,PO6
(Discussion,
Guest Lectures,
Regularity)
A2 Quiz/ 5% Individual Week 4, PO1, PO2, PO3,
Assignment/ Week 8 PO4, PO5, PO6,
Presentation PO7, PO8
A3 MOOC 5% Individual Week 12 PO1, PO2, PO3,
PO4, PO7, PO8,
PO10, PO11,
PO12
A4 Class Test 10% Individual Week-7 PO1,PO2,PO3,
PO5, PO6, PO7,
PO8, PO9,
PO10, PO11,
PO12
A5 End-term exam 75% Individual After Week- PO1, PO2,
17 PO3, PO4,
PO5, PO6,
PO7, PO8,
PO9, PO10,
PO11, PO12
Description of Assessments:
Class Participation (Discussion, Guest Lectures, Regularity) (5%): The participation of the
students in the class discussion, attending Guest Lectures and regularity in class shall be evaluated out
of 5 marks.
Quiz/Assignment/Presentation(5%):During the semester, participation in Quiz/
Assignment/Presentation shall be evaluated out of 5 marks.
MOOC (5%): During the semester, it is mandatory to do one MOOC (Massive Open Online Course)
which shall be evaluated out of 5 marks/subject (i.e. One MOOC will be evaluated for 5 subjects as
5X5 = 25marks per semester). [Note: MOOC will be decided by the Head of the Department]
Class Test (10%): There will be a class Test of 10% weightage on the completion of Week 7.
Ethics:
All graded assignments are intended to determine your individual skills, abilities, understanding
andknowledge.If youarehavingdifficultywithyourwork,itisimportanttoseekhelpfromyour course
instructorratherthanbetemptedtouseunfairmeanstogainmarks.Cheatingcanbeofdifferent forms, although
any form of cheating is strictly forbidden. These are, but not limited to:
Submitting other people's work as your own - either with or without theirknowledge.
Impersonation - taking an assessment on behalf of or pretending to be another student or allowing
another person to take an assessment on your behalf or pretend to beyou.
Plagiarism - taking or using another person's thoughts, writings or inventions as your own. To avoid
plagiarism, you must make sure that quotations, from whatever source, are clearly identified and attributed
at the point where they occur in the text of your work by using one of the standard conventions for
referencing. It is not enough just to list sources in a reference at the end of your project or dissertation if
you do not acknowledge the actual quotations in the text. Neither is it acceptable to change some
ofthewordsortheorderofsentencesif,byfailingtoacknowledgethesourceproperly, you give the impression that
it is your ownwork.
Duplication-submittingworkforassessmentthatisthesameas,orbroadlysimilarto, work submitted earlier for
academic credit, without acknowledgement of the previous submission.
All general queries are to be addressed to [email protected]
Jagannath International Management School
Vasant Kunj, New Delhi-110070
(Affiliated to Guru Gobind Singh Indraprastha University, New Delhi)
Recognized u/s 2(f) by UGC & Accredited with ‘A+’ Grade by NAAC
Participant of UNGC New York and ISO 9001:2015 Quality Certified
LESSON PLAN
TEXT BOOKS:
TB1 K.R. Venugopal, Rajkumar, T. Ravishanker, “Mastering C++”, TMH
TB2 E. Balagurusamy, “Object Oriented Programming with C++”, McGraw-Hill Education
REFERENCE BOOKS:
RB1 Ashok N. Kamthane, “Object-Oriented Programming with ANSI And Turbo C++”, Pearson Education.
RB2 Schildt Herbert, “C++: The Complete Reference”, Tata McGraw Hill.
RB3 R. Lafore, “Object Oriented Programming using C++”, Galgotia Publications.
e-journals
1. International Journal of Computer Engineering in Research Trends
Journals
1. Prof. Chetashri S. Bhusari, Prof. Shonal A Vaz, Prof. Supriya Angne: International Journal of Scientific Research,
17–20 (2019)
Magazines
1. C-Scene: The C/C++ Freezine
Websites
1.https://www.t cplusplus.com/
2.C++ Tutorial (w3schools.com)
3.Standard C++ (isocpp.org)
RUBRICS ASSIGNMENT – 1
Question 2 Definition
Definition + Key points
Definition + KeyDefinition
points + Short
+ Detailed
Discussion
Definition
Discussion
+ Detailed
of key points
Discussion
Question 3 Definition
Definition + Key points + Steps
Definition + Key points
Definition
+ Short+ Discussion
Detailed Discussion
of all ste
Definition + Key points + Short Discussion of all steps
Question 4 Definition
Definition + Key points + Steps
Definition + Detailed Discussion
Definition + KeyDefinition
points + Short
+ KeyDiscussion
points + Short
of allDiscussion
steps of all dif
Question 5 Definition
Definition + Key points + Steps
Definition + Key points
Definition
+ Short+ Discussion
Detailed Discussion
of all ste
Definition + Key points + Short Discussion of all steps
RUBRICS ASSIGNMENT – 2
Question 2 Definition
Definition + Key points
Definition + KeyDefinition
points + Short
+ Detailed
Discussion
Definition
Discussion
+ Detailed
of key points
Discussion +
Question 3 Definition
Definition + Key points + Steps Definition + Detailed Discussion o
Definition + Key points + Short Discussion of all steps
Definition + Key points + Short Discussion of all step
Question 4 Definition
Definition + Key points + Steps Definition + Detailed Discussion o
Definition + Key points + Short Discussion of all steps
Definition + Key points + Short Discussion of all step
UNIT 1
1.Explain Different between c &c++.
2. Explain Different between oops & pop
3.. Explain Features of oops.
4.Explain concept of oops.
5.Explain Scope resolution operator(::) With example.
6.Classify the different statements available in C++.
7.Differentiate between nested if-else and switch statement.
8.Compare and contrast for, whileand do-while looping statements.
9.Differentiate between break and continue statement.
10.Why the use of goto statement is not good for quality programming?
11.What is the need of array. Discuss different types of arrays?
12.Discuss different string handling functions available in C++.
13.What is the need of Object Oriented Programming paradigm?
14.What is the significance of static data and member functions in C++?
15.Write down the program to demonstrate static keyword in c++.
16.What is the use of this keyword in C++?
UNIT 2
1.What Inheritance? Explain its type with proper example.
2.Explain Function overloading.
3.What is Friend function?
4.Explan with example and rules of friend function.
5.What is Inline Function? Explain it with its's advantages and disadvantages.
6.Define Encapsulation and Data hiding.
7.Define Data Abstraction.
8.Define Data members.
9.Define Member functions.Define Inheritance.
10.Define Constructor and explain copy constructor, Default Constructor,
Parameterized Constructor, Constructor overloading.
11.What is Destructor? Explain it with example? also explain how to invoke
12.What is the return type of main ()?
13.Explain the concept of polymorphism by an example in C++.
14.Compare and Contrast late binding and early binding.
15.Define class and objects.
16.Write down the syntax and example to create a class.
17.Define reference variable. Give its syntax.
18. Define instance variables.
19.What are the different ways to define member functions of a class. What is the role
of scope
20.resolution operator in the definition of member function?
21.What is the need of passing objects as arguments. Discuss different ways to pass
objects as arguments to a function.
22.Discuss the benefits of retrurning objects from functions.
23.Write a program to add two complex numbers using object as arguments.
24.What is the need of constructor? How it is different from the member function?
25.Discuss default constructor and parameterized constructor with the help of an
example in C++.
26.Write down the example of dynamic constructor in C++.
27.What is copy constructor?
28.Explain Abstract class.
29.Write a C++ program demonstrating use of the pure virtual function with the use of
base and derived classes.
UNIT 3
UNIT 4
1. Explain Various File opening mode.
2.Explain Various File opening method with proper example.
3.How to read & write file? Also Explain How to read & write Binary File?
4. What is manuplator. Explain it with example. Also Explain Custom manuplator.
5. Explain Exception with try,catch& throw with example.
6.Explain the role of seekg(),seekp(),tellg(),tellp(),function in the process of random
access in a file.
7.Explain the Standard Template Library and how it is working.
8.Explain Operator overloading.
9.Write program to overload +,-,*,/,++,--. 23. Write program to overload ==,>,> and <<
10.What is the need of overloading operators and functions?
11.Write down the example to overload unary and binary operators in C++.
12.Write down a C++ program to implement function overloading.
13.How overriding is different from the overloading.
14.What is the use of super keyword in C++?
15.Compare and contrast error and exception.
16.Draw a neat and clean diagram to show exception handling model in C++.
17.Write down a detailed C++ program to demonstate the use of try, catch , throw and
nested try.
18.What is a user defined exception. Wirte down the scenario where we require user
defined exceptions.
19.When do we need multiple catch blocks for a single try block? Give an example.
20.What is role of manipulators in C++. Write down different manipulators in C++.
21.Differentiate between formatted and unformatted I/O. Discuss its different functions.
22.What are the file strams.
23. Explain the process of open,read,write and close files?
24.Write a C++ program involving multiple catch statements for a try block.
25.Write a C++ program involving the handling of exceptions in constructors and
destructors.
26.Write a C++ program involving input/output using overloaded operators << and >>
and member functions of I/O stream classes.
27.Write a C++ program involving a function template.
28. Write a C++ program involving a class template.
29.Write a C++ program involving working with a single file. Use ifstream and ofstream
classes to write and read the information to and from a file using operators:-<< and >>.
Show how a file can be opened and closed.
30.Write a C++ program involving input/output operations on characters in a file. (Hint:
put() and get() functions).
31.Write a C++ program involving reading and writing of class objects in a file.
32.Write a C++ program to update the contents of a file by accessing the contents
randomly