BCA (GEN) II Semester 2024-27 Batch
BCA (GEN) II Semester 2024-27 Batch
SEMESTER II
2. Contact Hours: L: 3 T: 0 P: 0
5. Credits: 3
6. Semester: II
9. Course Outcome: After completion of the course the students will be able to:
CO1: Understand the process of minimizing Boolean function
and obtaining the combinational logic circuits from
Boolean functions.
CO2: Analyse the basic storage elements in digital circuits and
develop sequential circuits by applying them.
CO3: Evaluate the design of different types of register, counter,
and programmable logic devices.
CO4: Apply the concept of digital logic circuits in computer
organization & architecture and evaluate the computer
performance.
CO5: Create the arithmetic logic used in computer and describe
the machine instruction execution.
CO6: Understand the memory hierarchy of computer and how
different I/O devices interact with the processing unit.
Unit 2:
Linked Lists
Introduction, Arrays and Linked Lists, building a Linked List,
2 8
Traversing the Linked List, Insert and Delete Operations,
Searching in a Linked List, Circular Linked List, Doubly Linked
List
Unit 3:
Stacks and Queues
Stacks: Introduction, Applications of Stack, Array and Linked
list implementations of a Stack, Infix, Prefix and Postfix
Expressions, converting infix expressions to prefix and postfix
3 forms, Evaluation of postfix expression 9
Queues: Introduction, Applications of Queue, Array and
Linked List implementation of queues, Circular Queue, Doubly
Ended Queue, Priority Queue
Unit 4:
Searching and Sorting
Searching: Sequential Search, Binary Search, Hashing: Hash
4 Table, Hash Functions, Collision Resolution Strategies, Hash 9
Table Implementation
Sorting: Bubble Sort, Selection Sort and Insertion Sort.
Unit 5:
Trees: Basic Terminology, Binary Trees: Definition and properties
5 10
of Binary Trees, Binary Tree Representation, Algebraic
Expressions, Types of binary trees, Binary tree traversals.
Total 45
Text Books:
Reference Books:
2. Contact Hours: L: 3 T: 0 P: 0
5. Credits: 3
6. Semester: II
9. Course Outcome: After completion of the course the students will be able to:
CO1: Discuss OOP features that are essential for building good
C++ programs.
CO2: Explain arrays, functions, classes, and objects to write C+
+ programs.
CO3: Implement C++ Programs using constructors, destructors,
and operator overloading.
CO4: Use public and private inheritance features in problem-
solving.
CO5: Use public and private inheritance features in problem-
solving.
CO6: Develop C++ programs using generic templates and
exception handling.
10. Details of the Course:
Sl. Contact
Contents
No. Hours
Unit 1:
OOP and Introduction to C++
OOP Concepts: Encapsulation, Abstraction, Inheritance, Data
Hiding, Message Passing, Benefits of OOP, Procedure-oriented
versus OOP, Structure of a C++ Program, Tokens, Identifiers,
1 9
Variables, and Constants.
Built-in data types, Operators, Precedence and Associativity
Operators, Control Structures: if, if-else, nested if, switch, while,
do-while, for, break, and continue
Unit 2:
User-defined Functions, Arrays, Structures, Unions, Pointers
Functions – Library and User-define Functions, Function
Prototype, Definition and Call, Inline Functions, Function
Overloading
Array - Single-dimensional array and Multidimensional Array
2 Structures - Declaring and defining a structure, Accessing 9
structure members
Unions - Declaring and defining a union, Initialization, and access
of union variables
Pointers - Pointers and their characteristics, Pointer
declaration and assignment, Pointer arithmetic, Dynamic
memory allocation using new and delete operators
Unit 3:
Classes and Objects
Classes and Objects, Defining Classes, Instantiating Objects,
and Member Functions, Accessibility Labels: public, private,
protected, Inline and non-inline function, Scope resolution
operators
3 Function overloading (Polymorphism) 8
Constructors and Destructors, Default Constructors,
Parameterized Constructors, Copy Constructor, Purpose of the
Constructors, Destructors, Static Members (variables and
functions), An array of Objects, Class Pointers, Friend Functions
and Friend Class.
4 Unit 4: 9
Inheritance, Operator Overloading, and Type Conversion
Concept of Reusability, Types of Inheritance: Single, Hierarchical,
Multilevel, Multiple Inheritance and Hybrid Inheritance
Operator Overloading: Overloading Unary and Binary Operators
by using member functions OR friend functions. Overloading
various operators [++/-- (used as pre and post operators),
arithmetic (+, -, *, /, ^), relational (<, <=, >, >=, !=, ==),
assignment (=), extraction (>>) and insertion (<<) operators)
Type conversion in C++: Primitive data type to class type
conversion, Class to Primitive data type conversion, Class to
Class conversion.
Unit 5:
Virtual Functions, File Handling, Exception Handling, and
Templates
Abstract Class, Function Overriding, Dynamic Binding, Pure
Virtual Functions, Data Ambiguity and Virtual Inheritance
File Classes (C++ stream classes), Opening, and Closing of a
File, File Modes, I/O operations in Files, I/O using primitive data
type: Formatted I/O in files, I/O using the class’s object
5 Generic programming approach using templates: Template 10
functions, Template class, Overloading template functions, using
different classes as a data type in the template class.
Inheritance of template class, STL: an overview, vectors,
containers, lists, and map.
Exception Handling in C++: Introduction to exceptions,
exceptions, and errors, types of exceptions, Using try, catch
blocks, throw various types of exceptions including class.
Total 45
Textbooks:
Reference Books:
2. Contact Hours: L: 3 T: 0 P: 0
5. Credits: 3
6. Semester: II
9. Course Outcome: After completion of the course the students will be able to:
CO1: Define the role and function of operating systems in
computer systems
CO2: Describe different types of operating systems, services
provided by OS, and the components of OS.
CO3: Describe and execute process synchronization, including
synchronization hardware, mutex locks, semaphores, and
monitors
CO4: Compare different process scheduling algorithms.
CO5: Evaluate the efficiency of different memory management
techniques.
Unit 4:
Deadlock -System Model, Deadlock Characterization, Methods for
4 Handling Deadlocks, Deadlock Prevention, Deadlock Avoidance, 9
Deadlock Detection, Recovery from Deadlock.
Total 45
Textbooks:
Reference Books:
1. Subject Code: TBC 204 Course Title: Probability and Statistics for Data Science
2. Contact Hours: L: 3 T: 0 P: 0
5. Credits: 3
6. Semester: II
9.Course After completion of the course the students will be able to:
Outcome: CO1: Describe between various types of data and explain their
relevance in understanding business problems.
CO2: Demonstrate the process of data collection and
preparation and perform exploratory data analysis (EDA)
to summarize main characteristics of the data.
CO3: Calculate probabilities and apply probability distributions
to solve real-world problems.
CO4: Compute and interpret measures of central tendency,
dispersion, shape and visualize data.
CO5: Conduct hypothesis testing and interpret the results in the
context of business problems.
CO6: Develop Regression models, perform correlation and
residual analysis to validate assumptions.
Total 45
Textbooks:
Reference Books:
2. Contact Hours: L: 2 T: 1 P: 0
5. Credits: 3
6. Semester: II
9. Course Outcome: After completion of the course the students will be able to:
CO1: Understand and apply the basic programming
constructs of Python suitably.
CO2: Explain the concepts of string processing, file I/O, lists
and dictionary.
CO3: Explore re-usability and the object-oriented principles
for modelling and developing.
CO4: Construct applications with graphical user interface.
CO5: Develop software solutions using multi-threading,
networking and client-server concepts.
Text Books:
2. Contact Hours: L: 2 T: 1 P: 0
5. Credits: 3
6. Semester: II
Textbooks:
Reference Books:
Doerr Alan & Applied 2nd Edition Galgotia Pub. Pvt. 2001
Levasseur Kenneth Discrete Ltd
Structures
for Computer
Science
2. Contact Hours: L: 2 T: 1 P: 0
5. Credits: 3
6. Semester: II
9.Course After completion of the course the students will be able to:
Outcome: CO1: Explain key concepts in cyber security, including the CIA
Triad, types of cybercriminals, and relevant cyber laws.
CO2: Identify and classify different types of cyber-attacks and
their corresponding defense mechanisms.
CO3: Demonstrate the ability to perform both passive and active
reconnaissance.
CO4: Analyze and compare different types of intrusion detection
systems (IDS).
CO5: Evaluate and assess various intrusion prevention systems
(IPS) and firewalls.
CO6: Develop a comprehensive security strategy by
incorporating best practices in defense mechanisms,
reconnaissance, IDS and IPS.
Total 45
Textbooks:
Nina Godbole, Sunit Cyber Security: 1st Edition Wiley Publishers 2011
Belapure Understanding
Cyber Crimes,
Computer
Forensics and
Legal
Perspectives
Reference Books:
2. Contact Hours: L: 0 T: 0 P: 4
3. Examination Duration (Hrs): Theory 0 Practical 3
4. Relative Weight: CIE 25 MSE 25 ESE 50
5. Credits: 2
6. Semester: II
9. Course Outcome: After completion of the course, the students will be able to:
CO1: Define fundamental data structure concepts, compare
and choose appropriate data structures to represent
data items in the real world.
CO2: Compare and analyze the merits and demerits of
various data structures in terms of complexity.
CO3: Design algorithms and develop programs using a
variety of data structures such as arrays, stacks,
queues, linked lists, graphs, and trees.
CO4: Implement and evaluate operations like searching,
insertion, deletion, traversing, and similar on various
data structures.
CO5: Understand, analyze and implement the concept of file
structures and file organizations in data structures.
10. Details of the Course:
Sl. List of problems for which students should develop Contact
No. programs and execute in the Laboratory Hours
1. Write a C Program to read n elements in an array and find 2
the average.
Use static memory allocation to allocate memory for the
array.
Use dynamic memory allocation to allocate memory for
the array.
Write a C program using recursive functions to
a) Find the nPr.
2. 2
b) Implement towers of Hanoi.
Textbooks:
Authors Name Title Edition Publisher, Country Year
Reference Books:
Link to Virtual Labs: (In addition, Departments to explore the Virtual Labs, Simulations, Case Studies
offered by Renowned Institutions/Organizations)
Virtual Labs
https://ds2-iiith.vlabs.ac.in/exp/selection-sort/index.html
GRAPHIC ERA (DEEMED TO BE UNIVERSITY), DEHRADUN
SEMESTER II
2. Contact Hours: L: 0 T: 0 P: 4
3. Examination Duration (Hrs): Theory 0 Practical 3
4. Relative Weight: CIE 25 MSE 25 ESE 50
5. Credits: 2
6. Semester: II
9. Course Outcome: After completion of the course, the students will be able to:
CO1: Describe the fundamentals of object-oriented
programming.
CO2: Explain different arithmetic and logical operations on
different data types using control structures.
CO3: Demonstrate the usage of classes, objects,
constructors, destructors, and operator overloading.
CO4: Experiment with a bottom-up approach using suitable
C++ programs for different applications.
CO5: Recommend file-manipulating operations for large data
using C++ programs.
CO6: Design and develop C++ programs using generic class
and function templates and handle exceptions.
10. Details of the Course:
Sl. List of problems for which students should develop Contact
No. programs and execute in the Laboratory Hours
Text Books:
Reference Books: