0% found this document useful (0 votes)
68 views27 pages

Annexure-BCA Scheme

The document outlines the curriculum structure for a Bachelor of Computer Applications (BCA) program over 8 semesters. It includes: 1) Core computer science courses each semester covering topics like programming, data structures, databases, networks, etc. along with corresponding labs. 2) Elective courses offered in semesters 5-8 allowing students to specialize in areas such as cybersecurity, cloud computing, AI, etc. 3) Internship and project work components in semesters 6 and 8 respectively to provide hands-on experience to students. 4) Detailed course codes, titles, credits and classification of courses as compulsory or electives across the 8 semesters of

Uploaded by

Jobin George
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
68 views27 pages

Annexure-BCA Scheme

The document outlines the curriculum structure for a Bachelor of Computer Applications (BCA) program over 8 semesters. It includes: 1) Core computer science courses each semester covering topics like programming, data structures, databases, networks, etc. along with corresponding labs. 2) Elective courses offered in semesters 5-8 allowing students to specialize in areas such as cybersecurity, cloud computing, AI, etc. 3) Internship and project work components in semesters 6 and 8 respectively to provide hands-on experience to students. 4) Detailed course codes, titles, credits and classification of courses as compulsory or electives across the 8 semesters of

Uploaded by

Jobin George
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 27

Annexure-BCA Scheme

NEP 2020 CURRICULUM

Bachelor of Computer Applications (BCA)


Curriculum for BCA
Hour / Week Hous/
Sem Core Courses DS Elective Courses
Theory Lab Week
1 i. Fundamentals of Computers 3
ii. Programming in C 3
iii. Mathematical Foundation/ 3
Accountancy
iv. LAB: Information Technology 4
v. LAB: C Programming 4
2 i. Discrete Mathematical Structures 3
ii. Data Structures using C 3
iii. Object Oriented Concepts using JAVA 3
iv. LAB: Data Structure 4
v. LAB: JAVA Lab 4
3 i. Data Base Management Systems 3
ii. C# and DOT NET Framework 3
iii. Computer Communication and 3
Networks
iv. LAB: DBMS 4
v. LAB: C# and DOT NET Framework 4
4 i. Python Programming 3
ii. Computer Multimedia and Animation 3
iii. Operating Systems Concepts 3
iv. LAB: Multimedia and Animation 4
v. LAB: Python programming 4
5 i. Internet Technologies 3 (a) Cyber Law and Cyber 3
ii. Statistical Computing and R 3 Security
Programming (b) Cloud Computing 3
iii. Software Engineering 3 (c) Business Intelligence 3
iv. LAB: R Programming 4
v. LAB: JAVA Script, HTML and CSS 4
vi. Vocational 1 3
6 i. Artificial Intelligence and Applications 3 (a) Fundamentals of Data 3
ii. PHP and MySQL 3 Science
iii. LAB: PHP and MySQL 4 (b) Mobile Application 3
iv. PROJECT: 12 Development
v. Vocational 2 3 (c) Embedded Systems 3
7 i. Analysis and Design of Algorithms 3 (a) Data Compression 3
ii. Data Mining and Knowledge 3 (b) IoT 3
Management (c) Data Analytics 3
iii. LAB: Algorithms 4
iv. LAB: Data Mining and Knowledge 4
Management
v. Vocational 3
8 i. Automata Theory and Compiler 3 (a) Open-Source 3
Design Programming
ii. Cryptography and Network Security 3 (b) Storage Area Networks 3
iii. Compiler Lab 4 (c) Pattern Recognition 3
iv. LAB: Project 12 (a) Machine Learning 3
v. Vocational 4 3
TABLE I: COURSE STRUCTURE FOR BCA.

Total Credit
of OE,
Total
Semester Course Code Title of the Paper Credit Languages,
Credit
CAE, Voc,
AECC, SEC
CAC01 Fundamentals of Computers 3
CAC02 Programming in C 3
CAC03(a)/(b) Mathematical Foundation/ Accountancy 3 13 26
CAC01P LAB: Information Technology 2
I CAC02P LAB: C Programming 2
CAC04 Data Structures using C 3
CAC05 Object Oriented Concepts using JAVA 3
CAC06 Discrete Mathematical Structures 3 13 26
CAC04 P LAB: Data Structure 2
II CAC05 P LAB: JAVA 2
CAC07 Data Base Management Systems 3
CAC08 C# and DOT NET Framework 3
CAC09 Computer Communication and Networks 3 13 26
CAC07P LAB: DBMS 2
III CAC08P LAB: C# and DOT NET Framework 2
CAC10 Python Programming 3
CAC11 Computer Multimedia and Animation 3
CAC12 Operating System Concepts 3 13 26
CAC10P LAB: Python programming 2
IV CAC11P LAB: Multimedia and Animation 2
CAC13 Internet Technologies 3
CAC14 Statistical Computing and R Programming 3
CAC15 Software Engineering 3 10 23
CAC13P LAB: JAVA Script, HTML and CSS 2
V CAC14P LAB: R Programming 2
CAC16 PHP and MySQL 3
CAC17 Artificial Intelligence and Applications 3
10 23
CAC16P LAB: PHP and MySQL 2
VI CA-P1 Project Work 5
CAC18 Analysis and Design of Algorithms 3
CAC19 Data Mining and Knowledge Management 3
CAC18P LAB: Algorithms 2 11 21
CAC19P LAB: Data Mining 2
VII CAI01 Internship 2
CAC20 Automata Theory and Compiler Design 3
CAC21 Cryptography and Network Security 3
6 20
CAC20P LAB: Compiler Lab 2
VIII CAP02 Project Work 6
TABLE II: CS COURSE DETAILS FOR BCA
List of compulsory courses and list
Course- Compulsory/
Course Code as referred above of option of elective courses.
Type Elective
(A suggestive list)
CAC01, CAC02, CAC03(a)/(b), CAC04,
CAC05, CAC06, CAC07, CAC08, CAC09,
CA CAC10, CAC11, CAC12, CAC13, CAC14, Compulsory As Mentioned in Table I
CAC15, CAC16, CAC17, CAC18, CAC19,
CAC20, CAC21
Cyber Law and Cyber Security
OR
CAE-1A Elective Business Intelligence
OR
Fundamentals of Data Science
Fundamentals of Data Science
OR
CAE-2A Elective Mobile Application Development
OR
Embedded Systems
Data Compression
CA E
OR
CAE-3A Elective Internet of Things (IoT)
OR
Data Analytics
Open-source Programming
OR
Storage Area Networks
CAE-4A Elective OR
Pattern Recognition
OR
Machine Learning
DTP, CAD and Multimedia
Vocational -1 Elective OR
Hardware and Server Maintenance
OR
Vocational -2 Elective Web Content Management Systems
OR
Vocational Computer Networking
Vocational -3 Elective OR
Health Care Technologies
OR
Digital Marketing
Vocational -4 Elective OR
Office Automation
Health & Wellness/ Social & Emotional
SEC 1 Compulsory
Learning
SEC 2 Compulsory Sports/NCC/NSS etc
SEC
SEC 3 Compulsory Ethics & Self Awareness
SEC 4 Compulsory Professional Communication
AECC1 Compulsory Environmental Studies
AECC
AECC2 Compulsory Constitution of India
Language 1 L1-1, L1-2, L1-3, L1-4 Compulsory Kannada/Functional Kannada
English/Hindi/French/ Additional
Language 2 L2-1, L2-2, L2-3, L4-4 Elective
English/ etc.
Computer Application Core Courses (CA C) for BCA (Hons)

Sl. No Course Code Title of the Paper


1 CAC01 Fundamentals of Computers
2 CAC02 Programming in C
3 CAC03 (a)/(b) Mathematical Foundation/ Accountancy
4 CAC04 Discrete Mathematical Structures
5 CAC05 Object Oriented Concepts using JAVA
6 CAC06 Data Structures using C
7 CAC07 Data Base Management Systems
8 CAC08 C# and DOT NET Framework
9 CAC09 Computer Communication and Networks
10 CAC10 Python Programming
11 CAC11 Computer Multimedia and Animation
12 CAC12 Operating System Concepts
13 CAC13 Internet Technologies
14 CAC14 Statistical Computing and R Programming
15 CAC15 Software Engineering
16 CAC16 PHP and MySQL
17 CAC17 Artificial Intelligence and Applications
18 CAC18 Analysis and Design of Algorithms
19 CAC19 Data Mining and Knowledge Management
20 CAC20 Automata Theory and Compiler Design
21 CAC21 Cryptography and Network Security
Computer Application Electives (CA E) for BCA (Hons)

Sl. No Computer Application Electives (CA E)


1 Business Intelligence
2 Cyber Law and Cyber Security
3 Data Analytics
4 Data Compression
5 Embedded Systems
6 Fundamentals of Data Science
7 Internet of Things (IoT)
8 Machine Learning
9 Mobile Application Development
10 Open-source Programming
11 Pattern Recognition
12 Storage Area Networks

Vocational Electives
Sl. No Vocational Electives
1 DTP, CAD and Multimedia
2 Hardware and Server Maintenance
3 Web Content Management Systems
4 Computer Networking
5 Health Care Technologies
6 Digital Marketing
7 Office Automation
Annexure: BCA Syllabus

Syllabus for BCA (Basic and Honors) 1st and 2nd


Semesters

Semester: I
Course Code: CAC01 Course Title: Fundamentals of Computers
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 02

Course Outcomes (COs):


 Introduction to computers, classification of computers, anatomy of computer,
constituents and architecture, microcontrollers
 Operating systems, functions of operating systems, classification of operating
systems, kernel, shell, basics of Unix, shell programming, booting
 Databases, why databases are used, users, SQL, data types in SQL,
introduction of queries - select, alter, update, delete, truncate, using where,
and or in not in
 Internet basics, features, applications, services, internet service providers,
domain name system, browsing, email, searching
 Web Programming basics, introduction of HTML and CSS programming
 Introduction of computers, classification of computers, anatomy of computer,
constituents and architecture, microcontrollers.

Course Content

Content Hours
Unit - 1

Fundamentals of Computers: Introduction to Computers - Computer Definition, 14


Characteristics of Computers, Evolution and History of Computers, Types of
Computers, Basic Organisation of a Digital Computer; Number Systems – different
types, conversion from one number system to another; Computer Codes – BCD,
Gray Code, ASCII and Unicode; Boolean Algebra – Boolean Operators with Truth
Tables; Types of Software – System Software and Utility Software; Computer
Languages - Machine Level, Assembly Level & High Level Languages, Translator
Programs – Assembler, Interpreter and Compiler; Planning a Computer Program -
Algorithm, Flowchart and Pseudo code with Examples.
Characteristics of computers, Classification of Digital Computer Systems:
Microcomputers, Minicomputers, Mainframes, Super computers.
Unit-2

Anatomy of Computer: Introduction, Functions & Components of a Computer, 14


Central Processing Unit, Microprocessor, Storage units, Input and output Devices.
How CPU and memory works. Program execution with illustrative examples.
Introduction to microcontrollers.
Operating System Fundamentals: Operating Systems: Introduction, Functions of
an operating System, Classification of Operating Systems, System programs,
Application programs, Utilities, The Unix Operating System, Basic Unix commands,
Microkernel Based Operating System, Booting.
Unit-3

Introduction to Database Management Systems: Database, DBMS, Why 14


Database -File system vs DBMS, Database applications, Database users,
Introduction to SQL, Data types, Classification of SQL-DDL with constraints, DML,
DCL, TCL
Internet Basics: Introduction, Features of Internet, Internet application, Services
of Internet, Logical and physical addresses, Internet Service Providers, Domain
Name System.
Web Basics: Introduction to web, web browsers, http/https, URL, HTML5, CSS

Text Books:
1. Pradeep K. Sinha and Priti Sinha: Computer Fundamentals (Sixth Edition), BPB
Publication
2. David Riley and Kenny Hunt, Computational thinking for modern solver,
Chapman & Hall/CRC,
Reference:
1. J. Glenn Brook shear,” Computer Science: An Overview”, Addision-Wesley,
Twelfth Edition,
2. R.G. Dromey, “How to solve it by Computer”, PHI,
Course Code: CAC01P Course Title: Information Technology Lab
Course Credits: 02 Hours/Week: 04
Total Contact Hours: 52 Formative Assessment Marks: 25
Exam Marks: 25 Exam Duration: 03

Part A: Hardware

1. Identification of the peripherals of a computer, components in a CPU and their


functions.

2. Assembling and disassembling the system hardware components of personal


computer.

3. Basic Computer Hardware Trouble shooting.

4. LAN and WiFi Basics.


5. Operating System Installation – Windows OS, UNIX/LINUX, Dual Booting.

6. Installation and Uninstallation of Software – Office Tools, Utility Software (like


Anti-Virus, System Maintenance tools); Application Software - Like Photo/Image
Editors, Audio Recorders/Editors, Video Editors …); Freeware, Shareware,
Payware and Trial ware; Internet Browsers, Programming IDEs,

7. System Configuration – BIOS Settings, Registry Editor, MS Config, Task Manager,


System Maintenance, Third-party System Maintenance Tools (Similar to
CCleaner and Jv16 PowerTools …)

Part B: Software

1. Activities using Word Processor Software

2. Activities using Spreadsheets Software

3. Activities using Presentation Software

4. Activities involving Multimedia Editing (Images, Video, Audio …)

5. Tasks involving Internet Browsing

6. Flow charts: Installation and using of flowgarithms software for different


arithmetic tasks like sum, average, product, difference, quotient and remainder
of given numbers, calculate area of Shapes (Square, Rectangle, Circle and
Triangle), arrays and recursion.
NOTE: In addition to the ones listed above, universities can include other activities
so as for the student to become proficient in using personal computers for
multiple purposes for which modern computers can be put to use.

Reference:
1. Computational Thinking for the Modern Problem Solver, By Riley DD, Hunt K.A CRC
press, 2014
2. Ferragina P, Luccio F. Computational Thinking: First Algorithms, Then Code. Springer
Web References:
http://www.flowgorithm.org/documentation/

Evaluation Scheme for Lab Examination

Assessment Criteria Marks


Activity – 1 from Part A Write up on the activity/ task 5
Demonstration of the activity/ task 5
Activity-2 from Part B Write up on the activity/ task 5
Demonstration of the activity/ task 5
Viva Voce based on Lab Activities 2
Practical Records 3
Total 25
Course Code: CAC02 Course Title: Programming in C
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 02

Course Outcomes (COs):


After completing this course satisfactorily, a student will be able to:

 Confidently operate Desktop Computers to carry out computational tasks


 Understand working of Hardware and Software and the importance of
operating systems
 Understand programming languages, number systems, peripheral devices,
networking, multimedia and internet concepts
 Read, understand and trace the execution of programs written in C language
 Write the C code for a given problem
 Perform input and output operations using programs in C
 Write programs that perform operations on arrays
Course Content

Content Hours
Unit - 1
Introduction to C Programming: Overview of C; History and Features of C;
Structure of a C Program with Examples; Creating and Executing a C Program;
Compilation process in C.

C Programming Basic Concepts: C Character Set; C tokens - keywords,


identifiers, constants, and variables; Data types; Declaration & initialization of 14
variables; Symbolic constants.

Input and output with C: Formatted I/O functions - printf and scanf, control
stings and escape sequences, output specifications with printf functions;
Unformatted I/O functions to read and display single character and a string -
getchar, putchar, gets and puts functions.

C Operators & Expressions: Arithmetic operators; Relational operators;


Logical operators; Assignment operators; Increment & Decrement operators;
Bitwise operators; Conditional operator; Special operators; Operator
Precedence and Associatively; Evaluation of arithmetic expressions; Type
conversion.
Unit - 2
Control Structures: Decision making Statements - Simple if, if_else, nested
if_else, else_if ladder, Switch Case, goto, break & continue statements; Looping
Statements - Entry controlled and exit controlled statements, while, do-while,
for loops, Nested loops. 14
Arrays: One Dimensional arrays - Declaration, Initialization and Memory
representation; Two Dimensional arrays - Declaration, Initialization and
Memory representation.
Strings: Declaring & Initializing string variables; String handling functions -
strlen, strcmp, strcpy and strcat; Character handling functions - toascii, toupper,
tolower, isalpha, isnumeric etc.
Unit - 3
Pointers in C: Understanding pointers - Declaring and initializing pointers,
accessing address and value of variables using pointers; Pointers and Arrays;
Pointer Arithmetic; Advantages and disadvantages of using pointers;

User Defined Functions: Need for user defined functions; Format of C user
defined functions; Components of user defined functions - return type, name,
14
parameter list, function body, return statement and function call; Categories of
user defined functions - With and without parameters and return type.
User defined data types: Structures - Structure Definition, Advantages of
Structure, declaring structure variables, accessing structure members,
Structure members initialization, comparing structure variables, Array of
Structures; Unions - Union definition; difference between Structures and
Unions.
Text Books:
1. C: The Complete Reference, By Herbert Schildt.
2. M.T Somashekara, D.S Guru and K.S. Manjunatha: Problem solving with C, PHI publication
3. C Programming Language, By Brain W. Kernighan
4. Kernighan & Ritchie: The C Programming Language (PHI)

Reference Books:
1. P. K. Sinha & Priti Sinha: Computer Fundamentals (BPB)
2. E. Balaguruswamy: Programming in ANSI C (TMH)
3. Kamthane: Programming with ANSI and TURBO C (Pearson Education)
4. V. Rajaraman: Programming in C (PHI – EEE)
5. S. Byron Gottfried: Programming with C (TMH)
6. Yashwant Kanitkar: Let us C
7. P.B. Kottur: Programming in C (Sapna Book House)
Course Code: CAC02P Course Title: C Programming Lab
Course Credits: 02 Hours/Week: 04
Total Contact Hours: 52 Formative Assessment Marks:25
Exam Marks: 25 Exam Duration: 03

Programming Lab

Part A:

1. Program to read radius of a circle and to find area and circumference


2. Program to read three numbers and find the biggest of three
3. Program to demonstrate library functions in math.h
4. Program to check for prime
5. Program to generate n primes
6. Program to read a number, find the sum of the digits, reverse the number and
check it for palindrome
7. Program to read numbers from keyboard continuously till the user presses
999 and to find the sum of only positive numbers
8. Program to read percentage of marks and to display appropriate message
(Demonstration of else-if ladder)
9. Program to find the roots of quadratic equation (demonstration of switch
Case statement)
10. Program to read marks scored by n students and find the average of marks
(Demonstration of single dimensional array)
11. Program to remove Duplicate Element in a single dimensional Array
12. Program to perform addition and subtraction of Matrices

Part B:

1. Program to find the length of a string without using built in function


2. Program to demonstrate string functions.
3. Program to demonstrate pointers in C
4. Program to check a number for prime by defining isprime( ) function
5. Program to read, display and to find the trace of a square matrix
6. Program to read, display and add two m x n matrices using functions
7. Program to read, display and multiply two m x n matrices using functions
8. Program to read a string and to find the number of alphabets, digits, vowels,
consonants, spaces and special characters.
9. Program to Reverse a String using Pointer
10. Program to Swap Two Numbers using Pointers
11. Program to demonstrate student structure to read & display records of n
students.
12. Program to demonstrate the difference between structure & union.
Note: Student has to execute a minimum of 10 programs in each part to complete the
Lab course

Evaluation Scheme for Lab Examination

Assessment Criteria Marks


Program – 1 from Part B Flowchart / Algorithm 02
Writing the Program 04
Execution and Formatting 04
Program -2 from Part B Flowchart/Algorithm 02
Writing the Program 04
Execution and Formatting 04
Viva Voce based on C Programming 02
Practical Record 03
Total 25
Course Code: CAC03(a) Course Title: Mathematical Foundation
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 02

Course Outcomes (COs):


 Study and solve problems related to connectives, predicates and quantifiers
under different situations.
 Develop basic knowledge of matrices and to solve equations using Cramer’s
rule.
 Know the concept of Eigen values.
 To develop the knowledge about derivatives and know various applications of
differentiation.
 Understand the basic concepts of Mathematical reasoning, set and functions
Content Hours
Unit - 1
Basic concepts of set theory: Mathematical logic introduction-statements 14
Connectives-negation, conjunction, disjunction- statement formulas and truth
tables- conditional and bi Conditional statements- tautology contradiction-
equivalence of formulas-duality law-Predicates and Quantifiers, Arguments.

Unit - 2
Operations on sets: power set- Venn diagram Cartesian product-relations - 14
functions- types of functions - composition of functions.
Matrix algebra: Introduction-Types of matrices-matrix operations-
transpose of a matrix -determinant of matrix - inverse of a matrix- Cramer’s
rule
Unit - 3
Matrix: finding rank of a matrix - normal form-echelon form cayley Hamilton
theorem-Eigen values 14
Differential calculus: Functions and limits - Simple Differentiation of
Algebraic Functions – Evaluation of First and Second Order Derivatives –
Maxima and Minima

Text Books:
P. R. Vittal-Business Mathematics and Statistics, Margham Publications, Chennai,
Reference Books:
B. S. Vatsa-Discrete Mathematics –New Age International Limited Publishers, New
Delhi
Course Code: CAC03(b) Course Title: Accountancy
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 02
Course Outcomes (COs):
 Study and understand Accounting, systems of Book, Branches of accounting
advantage and limitations
 Know the concept of accounting, financial accounting process and
Journalization
 Maintenance different account book and reconciliations
 Preparations of different bills, and trial balance.
 Understand the basic concepts of Mathematical reasoning, set and functions

Content Hours

Unit - 1
Introduction: History and Development of Accounting, Meaning, Objectives and 14
functions of Accounting, Book keeping V/s Accounting, Users of accounting data,
systems of book keeping and accounting, branches of accounting, advantages
and limitations of accounting
Accounting Concepts and Convention: Meaning, need and classification,
accounting standards meaning, need and classification of Indian accounting
standards. Accounting principles V/s accounting standard
Unit - 2

Financial Accounting Process: Classification of accounting transactions and 14


accounts, rules of debit and credit as per Double Entry System. Journalization
and Ledger posting.

Preparation of Different Subsidiary Books: Purchase Day book Sales Day


Book, Purchase Returns Day Book, Sales Returns Day Book, Cash Book.
Bank Reconciliation Statement: Meaning, Causes of Difference, Advantages,
Preparation of Bank Reconciliation Statements.
Unit - 3
Account Procedure: Honor of the Bill, Dishonor of the Bill, Endorsement, 14
Discounting, Renewal, Bill for collection, Retirement of the Bill, Accommodation
Bills, Bill Receivable Book and Payable Book.
Preparation of Trial Balance: Rectification of errors and Journal Proper
Preparation of Final Accounts: Meaning, need and classification, Preparation
of Manufacturing, Trading, Profit and loss account and Balance – Sheet of sale-
traders and partnership firms
Text Books:
1. S. Ramesh, B.S. Chandrashekar, A Text Book of Accountancy.
2. V.A. Patil and J.S. Korihalli, Book – keeping and accounting, (R. Chand and
Co. Delhi).
3. R. S. Singhal, Principles of Accountancy, (Nageen Prakash pvt. Lit. Meerut).
4. M. B. Kadkol, Book – Keeping and Accountancy, (Renuka Prakashan, Hubil)
5. Vithal, Sharma:Accounting for Management, Macmillan Publishers,
Mumbai.

Reference Books:
1. B.S. Raman, Accountancy, (United Publishers, Mangalore).
2. Tulsian, Accouning and Finacial Management – I: Financial
Accounting – Person Education.
Semester: II

Course Code: CAC04 Course Title: Data Structures using C


Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 02 Hours

Course Outcomes (COs):


After completing this course satisfactorily, a student will be able to:

 Describe how arrays, records, linked structures, stacks, queues, trees, and
graphs are represented in memory and used by algorithms
 Describe common applications for arrays, records, linked structures, stacks,
queues, trees, and graphs
 Write programs that use arrays, records, linked structures, stacks, queues,
trees, and graphs
 Demonstrate different methods for traversing trees
 Compare alternative implementations of data structures with respect to
performance
 Describe the concept of recursion, give examples of its use
 Discuss the computational efficiency of the principal algorithms for sorting,
searching, and hashing
Course Content

Content Hours
Unit - 1
Introduction to data structures: Definition; Types of data structures - Primitive & 14
Non-primitive, Linear and Non-linear; Operations on data structures.
Dynamic memory allocation: Static & Dynamic memory allocation; Memory
allocation and de-allocation functions - malloc, calloc, realloc and free.
Algorithm Specification, Performance Analysis, Performance Measurement
Recursion: Definition; Types of recursions; Recursion Technique Examples - GCD,
Binomial coefficient nCr, Towers of Hanoi; Comparison between iterative and
recursive functions.
Arrays: Basic Concepts – Definition, Declaration, Initialisation, Operations on
arrays; Types of arrays; Arrays as abstract data types (ADT); Representation of
Linear Arrays in memory.
Unit - 2
Traversing linear arrays; Inserting and deleting elements; Sorting – Selection sort, 14
Bubble sort, Quick sort, Selection sort, Insertion sort; Searching - Sequential Search,
Binary search; Iterative and Recursive searching; Multidimensional arrays;
Representation of multidimensional arrays; Sparse matrices.
Stacks: Basic Concepts – Definition and Representation of stacks; Operations on
stacks; Applications of stacks; Infix, postfix and prefix notations; Conversion from
infix to postfix using stack; Evaluation of postfix expression using stack; Application
of stack in function calls.
Queues: Basic Concepts – Definition and Representation of queues; Types of queues
- Simple queues, Circular queues, Double ended queues, Priority queues; Operations
on Simple queues.
Unit - 3
Linked list: Basic Concepts – Definition and Representation of linked list, Types of 14
linked lists - Singly linked list, Doubly liked list, Header liked list, Circular linked list;
Representation of Linked list in Memory
Operations on Singly linked lists – Traversing, Searching, Insertion, Deletion;
Memory allocation; Garbage collection
Trees: Definition; Tree terminologies –node, root node, parent node, ancestors of a
node, siblings, terminal & non-terminal nodes, degree of a node, level, edge, path,
depth;
Binary tree: Type of binary trees - strict binary tree, complete binary tree, binary
search tree and heap tree; Array representation of binary tree. Traversal of binary
tree; preorder, inorder and postorder traversal

Text Books
1. Ellis Horowitz and Sartaj Sahni: Fundamentals of Data Structures
References

1. Tanenbaum: Data structures using C (Pearson Education)


2. Kamathane: Introduction to Data structures (Pearson Education)
3. Y. Kanitkar: Data Structures Using C (BPB)
4. Kottur: Data Structure Using C
5. Padma Reddy: Data Structure Using C
6. Sudipa Mukherjee: Data Structures using C – 1000 Problems and Solutions
(McGraw Hill Education, 2007))
Course Code: CAC04P Course Title: Data Structures Lab
Course Credits: 02 Hours/Week: 04
Total Contact Hours: 52 Formative Assessment Marks: 25
Exam Marks: 25 Exam Duration: 03 Hours
Programming Lab
Part A:
1. Program to find GCD using recursive function
2. Program to display Pascal Triangle using binomial function
3. Program to generate n Fibonacci numbers using recursive function.
4. Program to implement Towers of Hanoi.
5. Program to implement dynamic array, find smallest and largest element of
the array.
6. Program to create two files to store even and odd numbers.
7. Program to create a file to store student records.
8. Program to read the names of cities and arrange them alphabetically.
9. Program to sort the given list using selection sort technique.
10. Program to sort the given list using bubble sort technique.
Part B:
1. Program to sort the given list using insertion sort technique.
2. Program to sort the given list using quick sort technique.
3. Program to sort the given list using merge sort technique.
4. Program to search an element using linear search technique.
5. Program to search an element using recursive binary search technique.
6. Program to implement Stack.
7. Program to convert an infix expression to postfix.
8. Program to implement simple queue.
9. Program to implement linear linked list.
10. Program to display traversal of a tree.

Evaluation Scheme for Lab Examination

Assessment Criteria Marks


Program – 1 from Part A Flowchart / Algorithm 02
Writing the Program 04
Execution and Formatting 04
Program -2 from Part B Flowchart/Algorithm 02
Writing the Program 04
Execution and Formatting 04
Viva Voce based on C Programming 02
Practical Record 03
Total 25
Course Code: CAC05 Course Title: Object Oriented Programming with
JAVA
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 02 Hours

Course Outcomes (COs):


After completing this course satisfactorily, a student will be able to:

 Understand the features of Java and the architecture of JVM


 Write, compile, and execute Java programs that may include basic data types and
control flow constructs and how type casting is done
 Identify classes, objects, members of a class and relationships among them
needed for a specific problem and demonstrate the concepts of polymorphism
andinheritance
 The students will be able to demonstrate programs based on interfaces and
threads and explain the benefits of JAVA’s Exceptional handling mechanism
compared to other Programming Language
 Write, compile, execute Java programs that include GUIs and event driven
programming and also programs based on files

Course Content

Content Hours
Unit - 1

Introduction to Java: Basics of Java programming, Data types, Variables,


Operators, Control structures including selection, Looping, Java methods,
Overloading, Math class, Arrays in java. 14
Objects and Classes: Basics of objects and classes in java, Constructors,
Finalizer, Visibility modifiers, Methods and objects, Inbuilt classes like String,
Character, String Buffer, File, this reference.

Unit - 2
14
Inheritance and Polymorphism: Inheritance in java, Super and sub class,
Overriding, Object class, Polymorphism, Dynamic binding, Generic
programming, Casting objects, Instance of operator, Abstract class, Interface in
java, Package in java, UTIL package.

Multithreading in java: Thread life cycle and methods, Runnable interface,


Thread synchronization, Exception handling with try catch-finally, Collections in
java, Introduction to JavaBeans and Network Programming.
Unit - 3

Event and GUI programming: Event handling in java, Event types, Mouse and
key events, GUI Basics, Panels, Frames, Layout Managers: Flow Layout, Border
Layout, Grid Layout, GUI components like Buttons, Check Boxes, Radio Buttons,
Labels, Text Fields, Text Areas, Combo Boxes, Lists, Scroll Bars, Sliders, 14
Windows, Menus, Dialog Box, Applet and its life cycle, Introduction to swing,
Exceptional handling mechanism.

I/O programming: Text and Binary I/O, Binary I/O classes, Object I/O,
Random Access Files.

Text Books

1. Programming with Java, By E Balagurusamy – A Primer, Fourth Edition, Tata


McGraw Hill Education Private Limited.

2. Core Java Volume I – Fundamentals, By Cay S. Horstmann, Prentice Hall

3. Object Oriented Programming with Java : Somashekara, M.T., Guru, D.S.,


Manjunatha, K.S

Reference Books:
1. Java 2 - The Complete Reference – McGraw Hill publication.

2. Java - The Complete Reference, 7th Edition, By Herbert Schildt– McGraw Hill
publication.
Course Code: CAC05P Course Title: JAVA Lab
Course Credits: 02 Hours/Week: 04
Total Contact Hours: 52 Formative Assessment Marks: 25
Exam Marks: 25 Exam Duration: 03 Hours

Course Outcomes (COs):


After completing this course satisfactorily, a student will be able to:

 Implement Object Oriented programming concept using basic syntaxes of


control Structures
 Identify classes, objects, members of a class and the relationships among them
needed for a finding the solution to specific problem
 Demonstrates how to achieve reusability using inheritance
 Demonstrate understanding and use of interfaces, packages, different
exception handling mechanisms and concept of multithreading for robust faster
and efficient application development.
 Identify and describe common user interface components to design GUI in Java
using Applet & AWT along with response to events

Practice Lab

1. Program to print the following triangle of numbers


1
12
123
1234
12345
2. Program to simple java application, to print the message, “Welcome to java”
3. Program to display the month of a year. Months of the year should be held in
an array.
4. Program to find the area of rectangle.
5. program to demonstrate a division by zero exception
6. Program to create a user defined exception say Pay Out of Bounds.

Programming Lab

PART A: Java Fundamentals OOPs in Java

1. Program to assign two integer values to X and Y. Using the ‘if’ statement the
output of the program should display a message whether X is greater than Y.
2. Program to list the factorial of the numbers 1 to 10. To calculate the factorial
value, use while loop. (Hint Fact of 4 = 4*3*2*1)
3. Program to add two integers and two float numbers. When no arguments
are supplied, give a default value to calculate the sum. Use function
overloading.
4. Program to perform mathematical operations. Create a class called AddSub
with methods to add and subtract. Create another class called MulDiv that
extends from AddSub class to use the member data of the super class.
MulDiv should have methods to multiply and divide A main function should
access the methods and perform the mathematical operations.
5. Program with class variable that is available for all instances of a class. Use
static variable declaration. Observe the changes that occur in the object’s
member variable values.
6. Program
a. To find the area and circumference of the circle by accepting the radius
from the user.
b. To accept a number and find whether the number is Prime or not
7. Program to create a student class with following attributes;
Enrollment No: Name, Mark of sub1, Mark of sub2, mark of sub3, Total
Marks. Total of the three marks must be calculated only when the student
passes in all three subjects. The pass mark for each subject is 50. If a
candidate fails in any one of the subjects his total mark must be declared as
zero. Using this condition write a constructor for this class. Write separate
functions for accepting and displaying student details. In the main method
create an array of three student objects and display the details.
8. In a college first year class are having the following attributes Name of the
class (BCA, BCom, BSc), Name of the staff No of the students in the class,
Array of students in the class
9. Define a class called first year with above attributes and define a suitable
constructor. Also write a method called best Student () which process a
first-year object and return the student with the highest total mark. In the
main method define a first-year object and find the best student of this class
10. Program to define a class called employee with the name and date of
appointment. Create ten employee objects as an array and sort them as per
their date of appointment. ie, print them as per their seniority.
11. Create a package ‘student. Fulltime. BCA ‘in your current working directory
a. Create a default class student in the above package with the following
attributes: Name, age, sex.
b. Have methods for storing as well as displaying

PART B: Exception Handling & GUI Programming

1. Program to catch Negative Array Size Exception. This exception is caused


when thearray is initialized to negative values.
2. Program to handle Null Pointer Exception and use the “finally” method to
display a message to the user.
3. Program which create and displays a message on the window
4. Program to draw several shapes in the created window
5. Program to create an applet and draw grid lines
6. Program which creates a frame with two buttons father and mother. When
we click the father button the name of the father, his age and designation
must appear. When we click mother similar details of mother also appear.
7. Create a frame which displays your personal details with respect to a button
click
8. Create a simple applet which reveals the personal information of yours.
9. Program to move different shapes according to the arrow key pressed.
10. Program to create a window when we press M or m the window displays
Good Morning, A or a the window displays Good After Noon E or e the
window displays Good Evening, N or n the window displays Good Night
11. Demonstrate the various mouse handling events using suitable example.
12. Program to create menu bar and pull-down menus.

Note: Student has to execute a minimum of 10 programs in each part to complete


the Lab course

Evaluation Scheme for Lab Examination

Assessment Criteria Marks


Program – 1 from Part A Flowchart / Algorithm 02
Writing the Program 04
Execution and Formatting 04
Program -2 from Part B Flowchart/Algorithm 02
Writing the Program 04
Execution and Formatting 04
Viva Voce based on C Programming 02
Practical Record 03
Total 25
Course Code: CAC06 Course Title: Discrete Mathematical Structures
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 02 Hours

Course Outcomes (COs):

After completing this course satisfactorily, a student will be able to:


 To understand the basic concepts of Mathematical reasoning, set and
functions.
 To understand various counting techniques and principle of inclusion and
exclusions.
 Understand the concepts of various types of relations, partial ordering and
 equivalence relations.
 Apply the concepts of generating functions to solve the recurrence relations.
 Familiarize the fundamental concepts of graph theory and shortest path
algorithm

Course Content

Content Hours
Unit - 1

The Foundations: Logic and proofs: Propositional Logic, Applications of


Propositional Logic, Propositional Equivalences, Predicates and Quantifiers,
Nested Quantifiers, Rules of Inference, Introduction to Proofs, Proof Methods
and Strategy. 14
Basic Structures: Sets, Functions, Sequences, Sums, and Matrices: Sets, set
operations, Functions, Sequences and Summations, matrices.

Counting: Basics of counting, Pigeonhole principle, Permutation and


combination, Binomial Coefficient and Combination, Generating Permutation
and Combination.
Unit - 2
Advanced Counting Techniques: Applications of Recurrence Relations,
Solving Linear Recurrence, Relations, Divide and Conquer Algorithms and
Recurrence Relations, Generating functions, Inclusion-Exclusion, Applications of
14
Inclusion-exclusion
Induction and Recursion: Mathematical Induction, Strong Induction and Well-
Ordering, Recursive Definitions and Structural Induction, Recursive Algorithms,
Program Corrections
Unit - 3

Relation: Properties of relation, Composition of relation, Closer operation on


relation, Equivalence relation and partition. Operation on relation, Representing
relation. 14

Graphs: Graphs and Graph models, Graph Terminology and Special Types of
Graphs, Representing Graphs and Graph Isomorphism, Connectivity, Euler and
Hamilton Paths, Shortest-Path Problems, Planar Graphs, Graph Coloring.

Text Book:

1. Discrete Mathematics and Its Applications, Kenneth H. Rosen: Seventh Edition,


2012.
References:
2. Discrete Mathematical Structure, Bernard Kolman, Robert C, Busby, Sharon Ross,
2003.
3. Graph Theory with Applications to Engg and Comp. Sci: Narsingh Deo-PHI 1986.
4. Discrete and Combinatorial Mathematics Ralph P. Grimaldi, B. V. Ramatta,
Pearson, Education, 5 Edition.
5. Discrete Mathematical Structures, Trembley and Manohar.

Note: The syllabi of the courses of remaining semesters shall be framed in subsequent BoS meetings.

You might also like