313304-Object Oriented Programming Using C++ Syllabus 4

Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

29-11-2024 10:57:40 PM

OBJECT ORIENTED PROGRAMMING USING C++ Course Code : 313304


: Cloud Computing and Big Data/ Computer Technology/ Computer Engineering/
Computer Science & Engineering/
Programme Name/s Computer Hardware & Maintenance/ Information Technology/ Computer Science &
Information Technology/ Computer Science/
Electronics & Computer Engg.
Programme Code : BD/ CM/ CO/ CW/ HA/ IF/ IH/ SE/ TE
Semester : Third
Course Title : OBJECT ORIENTED PROGRAMMING USING C++
Course Code : 313304

I. RATIONALE
In the modern world of Information Technology, Object Oriented Programming provides the most preferred
approach for software development. It offers a powerful way to cope up with real world problems. C++ helps to
develop fundamental understanding of object oriented concepts. This course enables to implement object
oriented approach to solve a given programming problem.

II. INDUSTRY / EMPLOYER EXPECTED OUTCOME


Develop applications using concepts of OOP in C++.

III. COURSE LEVEL LEARNING OUTCOMES (COS)


Students will be able to achieve & demonstrate the following COs on completion of course based learning

CO1 - Write C++ programs using classes and objects.


CO2 - Develop C++ programs using constructors.
CO3 - Implement Inheritance in C++.
CO4 - Implement Polymorphism in C++.
CO5 - Develop C++ programs to perform file operations.

IV. TEACHING-LEARNING & ASSESSMENT SCHEME


Learning Scheme Assessment Scheme
Actual
Contact Based on LL & TL Based
Theory
Course Course Hrs./Week on SL
Course Title Abbr Credits Paper Total
Code Category/s SLH NLH Practical
Duration Marks
FA- SA-
CL TL LL Total FA-PR SA-PR SLA
TH TH
Max Max Max Min Max Min Max Min Max Min
OBJECT ORIENTED
313304 PROGRAMMING OOP SEC 3 2 4 1 10 5 3 30 70 100 40 50 20 25@ 10 25 10 200
USING C++

MSBTE Approval Dt. 02/07/2024 Semester - 3, K Scheme


29-11-2024 10:57:40 PM

OBJECT ORIENTED PROGRAMMING USING C++ Course Code : 313304


Total IKS Hrs for Sem. : 0 Hrs
Abbreviations: CL- ClassRoom Learning , TL- Tutorial Learning, LL-Laboratory Learning, SLH-Self Learning
Hours, NLH-Notional Learning Hours, FA - Formative Assessment, SA -Summative assessment, IKS - Indian
Knowledge System, SLA - Self Learning Assessment
Legends: @ Internal Assessment, # External Assessment, *# On Line Examination , @$ Internal Online
Examination
Note :

1. FA-TH represents average of two class tests of 30 marks each conducted during the semester.
2. If candidate is not securing minimum passing marks in FA-PR of any course then the candidate shall be
declared as "Detained" in that semester.
3. If candidate is not securing minimum passing marks in SLA of any course then the candidate shall be
declared as fail and will have to repeat and resubmit SLA work.
4. Notional Learning hours for the semester are (CL+LL+TL+SL)hrs.* 15 Weeks
5. 1 credit is equivalent to 30 Notional hrs.
6. * Self learning hours shall not be reflected in the Time Table.
7. * Self learning includes micro project / assignment / other activities.

V. THEORY LEARNING OUTCOMES AND ALIGNED COURSE CONTENT


Suggested
Theory Learning Outcomes Learning content mapped with Theory Learning
Sr.No Learning
(TLO's)aligned to CO's. Outcomes (TLO's) and CO's.
Pedagogies.
Unit - I Principles of Object Oriented
Programming
1.1 Procedure Oriented Programming (POP) verses
TLO 1.1 Compare POP vs OOP Object Oriented Programming (OOP)
approach of programming. 1.2 Features of Object Oriented Programming,
TLO 1.2 Describe the different Examples of Object Oriented languages, Applications
features of Object Oriented of OOP
Lecture Using
Programming. 1.3 Data types, Type compatibility, Declaration of
Chalk-Board,
TLO 1.3 Write programs to variable, Dynamic initialization of variable,
Demonstration,
1 solve arithmetic expressions. Reference variable, Type casting
Presentations,
TLO 1.4 Write programs to 1.4 Special Operators in C++: Scope resolution
Hands-on,
demonstrate use of special operator, Memory management operators,
Flipped Classroom.
operators in C++. Manipulators
TLO 1.5 Develop C++ program 1.5 Structure of C++ program, Basic Input /Output
to show the use of Classes and operators and functions in C++, Simple C++ Program
Objects. 1.6 Class & Object: Introduction, Specifying a class,
Access specifiers, Defining member functions: Inside
class and Outside class, Creating objects, Memory
allocations for objects
TLO 2.1 Develop a program
using inline function.
Unit - II Functions and Constructors
TLO 2.2 Develop friend
2.1 Inline function, Static data members, Static
function to solve given Lecture Using
member function, Friend function: Using two
problem. Chalk-Board,
different classes , Using non-member function
TLO 2.3 Write C++ programs Demonstration,
2 2.2 Array of Objects, Object as function arguments
using array of objects. Presentations,
2.3 Concepts of Constructors, Types of constructors
TLO 2.4 Write C++ program to Hands-on,
2.4 Constructor overloading and Constructors with
initialize the object using Flipped Classroom.
default arguments
constructor.
2.5 Destructors
TLO 2.5 Write C++ program to
delete object using destructor.

MSBTE Approval Dt. 02/07/2024 Semester - 3, K Scheme


29-11-2024 10:57:40 PM

OBJECT ORIENTED PROGRAMMING USING C++ Course Code : 313304


Suggested
Theory Learning Outcomes Learning content mapped with Theory Learning
Sr.No Learning
(TLO's)aligned to CO's. Outcomes (TLO's) and CO's.
Pedagogies.
TLO 3.1 Explain the given
type of inheritance based on
Unit - III Extending classes using Inheritance
its characteristics. Lecture Using
3.1 Introduction to Inheritance, Defining a derived
TLO 3.2 Implement given type Chalk-Board,
class, Visibility modes and effects
of inheritance in C++ Demonstration,
3 3.2 Types of Inheritance : Single, Multilevel, Multiple,
program. Presentations,
Hierarchical, Hybrid
TLO 3.3 Write C++ program Hands-on,
3.3 Virtual base class, Abstract class, Constructor in
using virtual base class. Flipped Classroom.
derived class
TLO 3.4 Use constructor in
given derived class.
Unit - IV Pointers and Polymorphism in C++
4.1 Concept of Pointer: Pointer declaration, Pointer
TLO 4.1 Create C++ program
operator, Address operator, Pointer arithmetic
to perform given arithmetic
4.2 Pointer to Object: Pointer to object, 'this' pointer,
operations using pointers.
Pointer to derived class Lecture Using
TLO 4.2 Use 'pointer to object'
4.3 Introduction of Polymorphism, Types of Chalk-Board,
to solve the given problem.
polymorphism Presentations,
4 TLO 4.3 Use compile time
4.4 Compile time Polymorphism: Function Demonstration,
polymorphism to solve the
overloading, Revision of constructor overloading, Hands-on,
given problem.
Operator overloading: Rules for operator Flipped Classroom.
TLO 4.4 Use run time
overloading, Overloading of unary and binary
polymorphism to solve the
operators
given problem.
4.5 Run time polymorphism: Virtual function, Rules
for virtual function, Pure virtual function
TLO 5.1 Identify relevant
Unit - V File operations
class to perform the given file
5.1 C++ stream classes, Classes for file stream Lecture Using
operations.
operations Chalk-Board,
TLO 5.2 Describe different file
5.2 Detection of end of file, File modes Presentations,
5 modes.
5.3 Opening files: Using constructors and open(), Demonstration,
TLO 5.3 Develop C++ program
Closing files, Reading from and writing to files, Hands-on,
to perform read/write
Formatted Input/output functions in file Flipped Classroom.
operations from/to the given
5.4 Types of file: Random access, Sequential access
file.

VI. LABORATORY LEARNING OUTCOME AND ALIGNED PRACTICAL / TUTORIAL EXPERIENCES.


Practical / Tutorial / Laboratory Sr Laboratory Experiment / Practical Titles / Number Relevant
Learning Outcome (LLO) No Tutorial Titles of hrs. COs
LLO 1.1 Develop program to evaluate
*Write programs to evaluate any
expressions using various operators 1 2 CO1
expression using Input / Output functions
and Input/output functions.
*Write programs using-

LLO 2.1 Develop C++ program using Scope resolution operator


2 4 CO1
special type of operators. Memory management operator
Manipulators

Write programs to demonstrate use of-


LLO 3.1 Develop programs to
3 Implicit type casting 2 CO1
implement type casting.
Explicit type casting

Write programs to show use of classes and


LLO 4.1 Implement classes and objects
4 objects to define the function inside the 2 CO1
to define the function inside class.
class
MSBTE Approval Dt. 02/07/2024 Semester - 3, K Scheme
29-11-2024 10:57:40 PM

OBJECT ORIENTED PROGRAMMING USING C++ Course Code : 313304


Practical / Tutorial / Laboratory Sr Laboratory Experiment / Practical Titles / Number Relevant
Learning Outcome (LLO) No Tutorial Titles of hrs. COs
LLO 5.1 Implement classes and objects *Write programs to define the function
5 2 CO1
to define the function outside class. outside the class
LLO 6.1 Implement programs using *Write programs to implement inline
6 2 CO2
inline function. function
*Write programs to implement friend
LLO 7.1 Implement friend function function using-
using different classes.
7 2 CO2
LLO 7.2 Implement friend function Two different classes
using external function. External function

LLO 8.1 Develop program using static *Write programs to implement-


data member.
8 Static data member 2 CO2
LLO 8.2 Develop program using static
Static member function
member function.
LLO 9.1 Implement programs to show
9 *Write programs to create array of objects 2 CO2
the use of array of objects.
*Write programs for-

Default constructor
LLO 10.1 Implement the concept of
10 Parameterized constructor 4 CO2
constructor and destructor.
Copy constructor
Multiple constructor in one class

LLO 11.1 Implement Single level Write programs using-


inheritance.
11 Single level inheritance 2 CO3
LLO 11.2 Implement multilevel
Multilevel inheritance
inheritance.
LLO 12.1 Develop program using *Write programs to implement multiple
12 2 CO3
multiple inheritance. inheritance
LLO 13.1 Develop program using Write programs to implement hierarchical
13 2 CO3
hierarchical inheritance. inheritance
LLO 14.1 Implement virtual base class *Write programs to implement virtual base
14 2 CO3
in a program. class.
LLO 15.1 Implement constructors in Write programs which show the use of
15 2 CO3
derived class in a program. constructors in derived class
LLO 16.1 Implement pointer arithmetic
in a program. *Write programs to implement-
LLO 16.2 Implement pointer to object
16 Pointer to object 2 CO4
in a program.
'this' pointer
LLO 16.3 Implement 'this' pointer in a
program.
*Write programs for-

Pointer to derived class in single


LLO 17.1 Implement program to use
17 inheritance 4 CO4
pointer to derived class.
Pointer to derived class in multilevel
inheritance

LLO 18.1 Implement function Write programs which show the use of
18 2 CO4
overloading in a program. function overloading

MSBTE Approval Dt. 02/07/2024 Semester - 3, K Scheme


29-11-2024 10:57:40 PM

OBJECT ORIENTED PROGRAMMING USING C++ Course Code : 313304


Practical / Tutorial / Laboratory Sr Laboratory Experiment / Practical Titles / Number Relevant
Learning Outcome (LLO) No Tutorial Titles of hrs. COs
*Write programs to overload
LLO 19.1 Implement unary operator unary operator using-
overloading using member function.
19 4 CO4
LLO 19.2 Implement unary operator Member function
overloading using friend function. Friend function

Write programs to overload


LLO 20.1 Implement binary operator binary operator using-
overloading using member function.
20 2 CO4
LLO 20.2 Implement binary operator Member function
overloading using friend function. Friend function

LLO 21.1 Develop program using *Write programs to implement virtual


21 2 CO4
virtual function. function
LLO 22.1 Develop program using pure Write programs to implement pure virtual
22 2 CO4
virtual function. function
LLO 23.1 Implement read and write *Write programs to read and write from/to
operations from/to file using file using-
constructor. 23 2 CO5
Constructor
LLO 23.2 Implement read and write
open()
operations from/to file using open().
*Write programs to copy the content of one
LLO 24.1 Use formatted Input / Output
24 file into another file using formatted 2 CO5
functions to format the contents.
input/output functions
Write file programs to implement
LLO 25.1 Implement get() and put()
25 sequential input and output operations on 2 CO5
functions on file.
file
LLO 26.1 Implement input/ output Write programs to perform input / output
26 2 CO5
operations on binary file. operations on binary files
Note : Out of above suggestive LLOs -
'*' Marked Practicals (LLOs) Are mandatory.
Minimum 80% of above list of lab experiment are to be performed.
Judicial mix of LLOs are to be performed to achieve desired outcomes.

VII. SUGGESTED MICRO PROJECT / ASSIGNMENT/ ACTIVITIES FOR SPECIFIC LEARNING / SKILLS
DEVELOPMENT (SELF LEARNING)

Micro project

Develop Student Grading System. Accept student data and marks for 5 subjects for 5 students. Calculate the
percentage and finalize grade awarded to the student. Write the records in to file.
Develop Quiz Management System. Quiz should accept student credentials and contain 10 MCQ type questions.
Determine the final result. Save the result in file along with student credentials.
Develop advanced calculator for the following function: Binary to Decimal, Decimal to Binary etc..
Develop Hotel Management Application. It should accept room reservation for 10 rooms. Find number of empty
rooms. Display relevant information and write maximum 5 records into file.
Develop Employee Management System using Inheritance. Collect following information from user:
Employee_ID ,Employee_Name, Basic_Salary, Leave taken in the month Calculate Net Salary assuming applicable
deductions and display. Write maximum 5 records into file.
Any other micro project as suggested by subject faculty.

Assignment

Solve assignment covering all COs given by teacher


MSBTE Approval Dt. 02/07/2024 Semester - 3, K Scheme
29-11-2024 10:57:40 PM

OBJECT ORIENTED PROGRAMMING USING C++ Course Code : 313304


Other

Complete the course object oriented concepts using C++ on Infosys Springboard

Note :

Above is just a suggestive list of microprojects and assignments; faculty must prepare their own bank of
microprojects, assignments, and activities in a similar way.
The faculty must allocate judicial mix of tasks, considering the weaknesses and / strengths of the student in
acquiring the desired skills.
If a microproject is assigned, it is expected to be completed as a group activity.
SLA marks shall be awarded as per the continuous assessment record.
For courses with no SLA component the list of suggestive microprojects / assignments/ activities are
optional, faculty may encourage students to perform these tasks for enhanced learning experiences.
If the course does not have associated SLA component, above suggestive listings is applicable to Tutorials
and maybe considered for FA-PR evaluations.

VIII. LABORATORY EQUIPMENT / INSTRUMENTS / TOOLS / SOFTWARE REQUIRED


Sr.No Equipment Name with Broad Specifications Relevant LLO Number
1 Computer System (Any computer system with basic configuration) All
2 “C++” Compiler (Any) All

IX. SUGGESTED WEIGHTAGE TO LEARNING EFFORTS & ASSESSMENT PURPOSE (Specification Table)
Aligned Learning R- U- A- Total
Sr.No Unit Unit Title
COs Hours Level Level Level Marks
Principles of Object Oriented
1 I CO1 8 2 4 6 12
Programming
2 II Functions and Constructors CO2 12 2 4 10 16
3 III Extending classes using Inheritance CO3 9 2 4 10 16
4 IV Pointers and Polymorphism in C++ CO4 10 2 4 10 16
5 V File operations CO5 6 0 4 6 10
Grand Total 45 8 20 42 70

X. ASSESSMENT METHODOLOGIES/TOOLS

Formative assessment (Assessment for Learning)

Continuous assessment based on process and product related performance indicators


Each practical will be assessed considering 60% weightage to process and 40% weightage to product
A continuous assessment-based term work

Summative Assessment (Assessment of Learning)

End semester examination, Lab performance, Viva voce

XI. SUGGESTED COS - POS MATRIX FORM

MSBTE Approval Dt. 02/07/2024 Semester - 3, K Scheme


29-11-2024 10:57:40 PM

OBJECT ORIENTED PROGRAMMING USING C++ Course Code : 313304


Programme
Specific
Programme Outcomes (POs)
Outcomes*
(PSOs)
Course PO-5
Outcomes PO-1 Basic Engineering
(COs) and PO-2 PO-3 Design/ PO-4 Practices for PO-7 Life
PO-6 Project PSO- PSO- PSO-
Discipline Problem Development Engineering Society, Long
Management 1 2 3
Specific Analysis of Solutions Tools Sustainability Learning
Knowledge and
Environment
CO1 2 1 1 2 1 1 1
CO2 2 1 1 2 1 1 1
CO3 2 2 2 2 2 2 1
CO4 2 2 2 2 2 2 1
CO5 2 2 2 2 2 2 1
Legends :- High:03, Medium:02,Low:01, No Mapping: -
*PSOs are to be formulated at institute level

XII. SUGGESTED LEARNING MATERIALS / BOOKS


Sr.No Author Title Publisher with ISBN Number
E Object Oriented McGraw-Hill Education ISBN-10:0070669074, ISBN-
1
Balaguruswamy Programming with C++ 13:9780070669079
McGraw-Hill Education ISBN-10: 0070681899, ISBN-13:
2 D Ravichandran Programming with C++
978-0070681897
The C++ Programming Pearson Education New Delhi ISBN-10: 0275967301,
3 Stroustrup B.
Language ISBN-13: 978-0275967307
Object Oriented Pearson Education India ISBN-10: 8131722821, ISBN-
4 Robert Lafore
Programming in C++ 13: 978-8131722824

XIII . LEARNING WEBSITES & PORTALS


Sr.No Link / Portal Description
1 https://www.w3schools.com/cpp/ C++ Tutorial for all topics
2 https://www.javatpoint.com/cpp-tutorial C++ Tutorial for all topics
3 https://www.javatpoint.com/cpp-files-and-streams C++ File Streams
4 https://www.programiz.com/cpp-programming Inheritance in C++
5 https://www.programiz.com/cpp-programming/online-compiler/ Online Compiler for C++
6 https://www.onlinegdb.com/online_c++_compiler Online compiler for C++
Note :

Teachers are requested to check the creative common license status/financial implications of the suggested
online educational resources before use by the students

MSBTE Approval Dt. 02/07/2024 Semester - 3, K Scheme

You might also like