Bca 23 24 1
Bca 23 24 1
Of
BCA (Bachelor of Computer Application)
3-Years Programme
AY-2023-24
August-2023
1
Table of Contents
S. No. Title Page
1 1.1 Teaching Learning Process in Faculty of Information Technology 3-4
1.2 Flowchart of Teaching Learning Process in Faculty of Information
Technology
2 Admission Guidelines
3 B.C.A.(3 Years-6 Semester) guidelines 4-5
2
1.1 Teaching and Learning Process: The whole process/system for Teaching and Learning Quality
Improvement is shown in Fig.1.1. The Academic Calendar of the Faculty of Information
Technology is based on Syllabus prescribed by the University. The calendar of events of the
academic calendar incorporates various industrial visits, guest lectures, technical competitions
and short-term courses. The calendar of events is incorporated in framing the Timetable.
>75%for Fast
Calendar of Events
Learner
Industrial Visits
Guest/Expert Lectures
Technical Competitions Course Allotment
Short Term Courses
Lesson Plan
Prepare Learning Material Prepare Session Plan for both Lab Conduction
Theory and Practical Methodology
Analyze by DAC
Internal Test
Result Analysis
The faculty conducts the classes as per the lecture and course plan. Online feedback from the students
are collected and analysed by the Departmental Academic committee (DAC). If any inconsistencies are
found by DAC in the teaching learning process, the concerned faculty are advised to modify the teaching
methodology and also attend Faculty development programmes.
Two internal assessments are conducted for a particular subject per semester. The attainment of COs
are analysed for taking remedial actions. Remedial actions include identification of slow, and fast
learners.
For the slow learners (≤45% marks in class test) the following methods of improvement are adopted-
Peer teaching, Counselling, mentoring, intimation to parents and conducting extra classes.
Fast learners (>75% marks in class test) are motivated to continue the achieve excellency and they are
encouraged to participate in co-curricular and extra-curricular activities.
2 Admission Guidelines.
Eligibility Criteria
A candidate shall be eligible for appearing in the Entrance Test leading to admission to BCA(Bachelor
of Computer Applications) Semester I, if he/she has passed the following:
Admission to 3-Year 45% marks or equivalent grade in "10+2" examination (any discipline) from any
recognized board preferably Mathematics/ any subject in Computer Science.
OR
A pass in diploma in Commercial Practice or equivalent
BCA (The University will offer suitable bridge courses such as Mathematics etc.,
forthe students coming from diverse backgrounds to prepare Level playing field
and desired learning outcomes of the programme)
4
which may refuse to admit any student without assigning anyreason there for.
d. On his/her selection for admission to the BCA Semester I programme, the candidate shall,
within the time fixed by the Dean, Faculty of Information Technology deposit the fees
prescribed for the programme. If the candidate fails to deposit fees within the stipulated time,
his/her selection shall automatically stand cancelled.
e. Reservation in admission will be made as Govt. of Bihar rules
Intake
Course Intake
BCA (3-years,6 Semesters) 120
Documents Required
• Scanned copies of academic details.
• Scanned passport size photograph of the candidate in JPG/JPEG format
• Scanned clear signature of the candidate in JPG/JPEG format
• A valid e-mail ID.
• Scanned copies of Category certificate, PwD certificate, if applicable.
• Migration certificate
• Transfer certificate
• Character certificate
• **Other documents if any
Academic Calendar - Each academic session is divided into two semesters of approximately an Odd
semester (July- December) and Even semester (January-May).
5
5. General Course Structure & Theme-
5.2. Range of Credits: Credit Requirements: The candidates shall complete courses equivalent to a
minimum of
➢ 140 credits to become eligible for the Regular Bachelor in Computer Applications Degree(3-Years,6
semesters)
➢ 180 credits to become suitable for the Bachelor in Computer Applications Degree with Honours (4-
years,8 semesters).
An individual seeking to continue to the Bachelor in Computer Applications (Honours) would normally
have completed all requirements of the 3-year Bachelor in Computer Applications Degree.
5.3 Course level coding scheme: Three-digit number (odd numbers are for the odd semester courses
and even numbers are for even semester courses) used as suffix withthe Course Code for identifying
the level of the course. Digit at hundred’s place signifiesthe year in which course is offered.
e.g. 101, 102 … etc. for first year. 201, 202 …. Etc. for second year.301, 302 … for third year.
➢ Sessional (Project, Seminar, etc) e.g. PCC-CS-681..i.e 6-Sixth Sem,8-Sessional, 1- sequence.
Laboratory- PCC-CS-691.. ..i.e 6-Sixth Sem,9-Laboratory, 1- sequence
Total credit for BCA (3 Years) to be awarded- 140
Total credit for BCA (4 Years) to be awarded- 180
6
5.4 Mandatory Induction Program: The Essence and Details of Induction program can also be
understood from the ‘Detailed Guide on Student Induction program’, as available on AICTE Portal,
(Link: https://www.aicteindia.org/sites/default/files/Detailed%20Guide%20on%20Student
%20Induction%20program.pdf).
7
6 Semester-wise subject structure of B.C.A (3 years-6 semesters ) -
8
7 BC23-581 Minor Project-1 0 0 6 3
8 BC23-582 Industrial Training/Internship (6 to 8 Weeks) 0 0 0 4
6th Semester Theory
1 BC23-601 Environment and Ecology 3 1 0 4
BC23-E601 MOOCs-Open Electives preferably be opted from
2 3 1 0 4
A/B/C the NPTEL/SWAYAM Platform*.
BC23-E602 MOOCs-Open Electives preferably be opted from
3 3 1 0 4
A/B/C the NPTEL/SWAYAM Platform*. 20
*MOOCs Regarding: MOOCs basket will be declared at the beginning of the semester by Dean Faculty of
Information Technology based on emerging technologies. The courses has to be chosen from the basket.
[1] While opting for a course for pursuing the Open Elective, a student needs to ensure that:
i) The duration of the course must minimum of 12-Weeks.
ii) The course must not be covered in previous semesters of the program.
iii) Date of Exam and publication of result should be within the tenure of the BCA 6 th Semester (8th Sem-Four
Year BCA) i.e. January to June of every Year.
[2] The student should register and submit the details of the course at the time of enrolment of 6 th Sem.
8.
Evaluation Scheme:
It is advised to refer page numbers 48-51 of the document "Examination Reform Policy
November 2018" published by AICTE to get some examples of assessment rubrics
(https://www.aicte-india.org/sites/default/files/ExaminationReforms.pdf). There are
several good examples of assessment rubrics available on the web when searching with
the string "examples of assessment rubrics". There are many good videos available on
YouTube on examples and strategies for preparing assessment rubrics.
Since assessment rubrics are not generic in nature and depend on courses, topics,
9
assessment strategies of individual faculties etc., it is suggested that Faculty of
Information Technology will follow the following rubrics for Theory, Laboratory and
Sessional evaluation.
a. Rubrics for Theory Courses:
The internal assessment will be of 30 marks and end semester examinations will be of
70 marks. For passing the subject the students should obtain at least 40 marks out of
100 (Internal assessment and end semester assessment).
Suggestive rubrics for Internal Assessment: Calculation of Internal assessment number will
be Average of Best of three CA plus 5 marks of Attendance.
Outstanding O 100 to 90 10
Excellent E 89 to 80 9
Very Good A 79 to 70 8
Good B 69 to 60 7
Fair C 59 to 50 6
Below Average D 49 to 40 5
Failed F Below 40 2
Incomplete I ------ 2
10
d. Promotional Policy: Candidates will be eligible for promotion to the next semester without
clearing all end semester theory courses of earlier semesters if,
Candidates failed to achieve the minimum benchmarks as mentioned in (a), (b), (c) for promotion
will not be eligible for promotion to the next higher semester.
Candidates will appear in the end semester theory examinations as back log candidate in
corresponding semester, of subsequent academic year. Marks scored in Continuous Assessments,
Sessional Examinations, Practical Examinations during attending regular semester with minimum
qualifying attendance would be carried all through. Backlog candidates would be allowed to appear
in the end semester examinations only to achieve qualifying marks of the paper concerned. For 7 th
and 8thSemester backlog students, backlog examinations may be conducted after two months from
the date of result publication.
If any candidate fails to secure minimum qualifying marks (pass marks) in sessional or practical
examinations would suffer year lag and they have to continue the semester concerned afresh in
the next academic year. In the internal examination of 30 marks -Cumulative Assessment 25 plus 5
marks for attendance.
The marks of a back log paper will be determined from the marks obtained in theory examination
and marks of the continuous evaluation of the regular semester. No up-gradation of
internal/continuous assessment marks would be allowed.
If any candidates fail to achieve any of the three conditions above (a, b & c) in any semester (say,
1st semester), they would not be allowed to continue their study in the next semester (i.e., 2nd
semester) and they have to fulfill the academic regulations by enrolling them in the next academic
year from the discontinued semester (i.e. 1st semester) and so on.
However, there would not be any limit of number of back papers to continue their study in
subsequent semester as regular candidate.
e. Calculation of DGPA, CGPA for one, two, three and four year programmes.
• Result Status: X=Not eligible for Semester Promotion/Degree; XP=Eligible for Promotion
with Backlogs; P=Passed and Promoted.
• The method of calculation of Grade Point Average is as follows
𝐶𝑟𝑒𝑑𝑖𝑡 𝐼𝑛𝑑𝑒𝑥
• SGPA (Semester Grade Point Average) = ∑ Credits
11
(For 4 Year Course)
YGPA2 + 1.5∗ YGPA3 + 1.5∗ YGPA4
DGPA = 4
Where
n = 4 for 2 years programme
n=6 for 3 years programme
n = 8 for 4 years programme
n = 10 for 5 years programme
12
9.
13
14
15
10 Appendix 1: Detailed Syllabus Semester –I to Semester VI
Unit 1. Data and number systems; Binary, Octal and Hexadecimal representation and their
conversions; BCD,ASCII, EBDIC, Gray codes and their conversions; Signed binary number
representation with 1’s and 2’s complement methods, Binary arithmetic.
Venn diagram, Boolean algebra; Various Logic gates- their truth tables and circuits;
Representation in SOP and POS forms; Minimization of logic expressions by algebraic method, K-
map method
Unit 2. Combinational circuits- Adder and Subtractor circuits; Applications and circuits of
Encoder, Decoder, Comparator, Multiplexer, De-Multiplexer and Parity Generator. [5]
Memory Systems: RAM, ROM, EPROM, EEROM, Designof combinational circuits-using ROM,
Programming logic devices and gate arrays. (PLAs and PLDs)
Unit 3. Sequential Circuits- Basic memory element-S-R, J-K, D and T Flip Flops, various types of Registers
and counters and their design, Irregular counter, State table and state transition diagram, sequential
circuits design methodology.
Unit 4. Different types of A/D and D/A conversion techniques. Logic families- TTL, ECL, MOS and
CMOS, their operation and specifications.
Detailed content
Idea of Algorithm: steps to solve logical and numerical problems. Representation of Algorithm:
Flowchart/Pseudo code with examples. (1 lecture)
From algorithms to programs; source code, variables (with data types) variables and memory
locations, Syntax and Logical Errors in compilation, object and executable code. (2 lectures)
16
Unit 4: Arrays
Searching, Basic Sorting Algorithms (Bubble, Insertion and Selection), Finding roots of equations, notion
of order of complexity through example programs (no formal definition required).
Unit 6: Function
Functions (including using built in libraries), Parameter passing in functions, call by value, passing
arrays to functions: idea of call by reference.
Unit 7: Recursion
Recursion, as a different way of solving problems. Example programs, such as Finding Factorial,
Fibonacci series, Ackerman function etc. Quick sort or Merge sort.
Unit 8: Structure
Unit 9: Pointers
Idea of pointers, Defining pointers, Use of Pointers in self-referential structures, notion of linked list
(no implementation).
Unit 10: File handling (only if time is available, otherwise should be done as part of the lab).
Course Outcomes
17
Learning Resources:
Combinatorics: Basic counting, balls and bins problems, generating functions, recurrence relations. Proof
techniques, principle of mathematical induction, pigeonhole principle.
Graph Theory: Graphs and digraphs, complement, isomorphism, connectedness and reachability, adjacency
matrix, Eulerian paths and circuits in graphs and digraphs, Hamiltonian paths and circuits in graphs and
tournaments, trees; Planar graphs, Euler’s formula, dual of a planer graph, independence number and
clique number, chromatic number, statement of Four-color theorem.
Logic: Propositional calculus - propositions and connectives, syntax; Semantics - truth assignments and
truth tables, validity and satisfiability, tautology; Adequate set of connectives; Equivalence and normal
forms;Compactnessandresolution;Formalreducibility-naturaldeductionsystemand axiom
system; Soundness and completeness.
Text Books: 1
18
Course title: PC Software
Course code: BC23-104
LTP: 3-1-0
Credit: 4
Introduction MS Windows (Windows ’10)
Familiarization and using MS packages – Word, Excel, PowerPoint, basic skills in using these tools.
(Version MS-Office’2013)
Books:
19
Course code: BC23-192 Category: Engineering Science Courses
Course Title: Programming in C laboratory Semester: II
L-T-P : 0-0-4 Credit: 02
The laboratory should be preceded or followed by a tutorial to explain the approach or algorithm to be implemented for the
problem given.
Experiment-I
20
Experiment-VII
Introduction to MS Office, Windows Overview, Office features, Templates and Wizards, MS Word,
Excel, PowerPoint, Outlook (Overview), MS Access (Table, relation, queries, reports)
21
Course title: Computer Architecture & Organization
Course code: BC23-201
LTP: 3-1-0
Credit: 4
Revision of basics in Boolean logic and Combinational/Sequential Circuits.
Instruction set architecture of a CPU: Registers, instruction execution cycle, RTL interpretation of instructions,
addressing modes, instruction set. Outlining instruction sets of some common CPUs.
Data representation: Signed number representation, fixed and floating point representations, character
representation.
Computer arithmetic: Integer addition and subtraction, ripple carry adder, carry look-ahead adder, etc.
multiplication – shift-and-add, Booth multiplier, carry save multiplier, etc. Division restoring and non-
restoring techniques, floating point arithmetic, IEEE 754 format.
CPU control unit design: Hardwired and micro-programmed design approaches, design of a simple
hypothetical CPU.
Peripheral devices and their characteristics: Input-output subsystems, I/O device interface, I/O Transfers–
programcontrolled, interrupt drivenand DMA, privileged and non-privileged instructions, software interrupts and
exceptions. Programs and processes
– Role of interrupts in process state transitions, I/O device interfaces – SCII, USB.
Pipelining: Basic concepts of pipelining, throughput and speedup, pipeline hazards. Parallel Processors:
Introduction to parallel processors, Concurrent access to memory and cache coherency.
Memory organization: Memory interleaving, concept of hierarchical memory organization, cache memory, cache
size vs. block size, mapping functions, replacement algorithms, write policies.
Text Books:
1. Computer System Architecture M. M. Mano:, 3rd ed., Prentice Hall of India, New Delhi,
1993.
2. Computer Organization and Design: The Hardware/Software Interface,
David A. Patterson andJohn L. Hennessy.
3. Computer Organization and Embedded Systems, Carl Hamacher.
22
Reference Books:
Detailed Contents
Basic Terminologies and Introduction to Algorithm & Data Organisation: Algorithm specification, Recursion,
Performance analysis, Asymptotic Notation - The Big-O, Omega and Theta notation, Programming Style,
Refinement of Coding - Time-Space Trade Off, Testing, Data Abstraction
Linear Data Structure: Array, Stack, Queue, Linked-list and its types, Various Representations, Operations&
Applicationsof Linear Data Structures
Non-linear Data Structure: Trees (Binary Tree, Threaded Binary Tree, Binary Search Tree, B & B+ Tree, AVL Tree, Splay
Tree) and Graphs (Directed, Undirected), Various Representations, Operations & Applications of Non-Linear
Data Structures
Searching and Sorting on Various Data Structures: Sequential Search, Binary Search, Comparison Trees, Breadth First
Search, Depth First Search Insertion Sort, Selection Sort, Shell Sort, Divide and Conquer Sort, Merge Sort,
Quick Sort, Heap sort, Introduction to Hashing
File Organization (Sequential, Direct, Indexed Sequential, and Hashed) and various types ofaccessing schemes.
Graph: Basic Terminologies and Representations, Graph search and traversal algorithms and complexity
analysis.
Text Books:
1. Fundamentals of Data Structures, E. Horowitz, S. Sahni, S. A-
Freed, UniversitiesPress.
2. Data Structures, R.S. Salaria, Khanna Book Publishing, Delhi.
3. Data Structures and Algorithms, A. V. Aho, J. E. Hopperoft, J.
D. UIlman,Pearson.
4. Expert Data Structures with C, R.P. Patel, Khanna Publishing House.
Reference Books:
1. The Art of Computer Programming: Volume 1: Fundamental Algorithms, Donald
E. Knuth.
23
2. Design and Analysis of Algorithms, Gajendra Sharma, Khanna Book Publishing
3. Introduction to Algorithms, Thomas, H. Cormen, Charles E. Leiserson,
Calculus (Integration):
Evolutes and involutes; Evaluation of definite and improper integrals; Beta and
Gamma functions and their properties; Applications of definite integrals to evaluate
1 surface areas and volumes of revolutions.
Calculus (Differentiation):
Rolle’s Theorem, Mean value theorems, Taylor’s and Maclaurin’s theorems with
remainders; Indeterminate forms and L'Hospital's rule; Maxima and minima.
2
Matrices:
Matrices, Vectors: addition and scalar multiplication, matrix multiplication; Linear
systems of equations, linear Independence, rank of a matrix, determinants,
3
Cramer’s Rule, inverse of a matrix, Gauss elimination and Gauss-Jordan
elimination.
Vector Spaces:
Vector Space, linear dependence of vectors, Basis, Dimension; Linear
transformations (maps), Range and Kernel of a linear map, Rank and Nullity, Inverse
4
of a linear transformation, Rank-Nullity theorem, composition of linear
maps, Matrix associated with a linear map.
Vector Spaces (Continued):
Eigenvalues, Eigenvectors, Symmetric, Skew-symmetric, and Orthogonal
Matrices, Eigenbases.
5
Diagonalization; Inner product spaces, Gram-Schmidt orthogonalization.
Course Outcomes:
▪ Apply the concept and techniques of differential and integral calculus to determine curvature
and evaluation of different types of improper integrals.
▪ Understand the domain of applications of mean value theorems to engineering problems.
▪ Learn different types of matrices, concept of rank, methods of matrix inversion and their
applications. Understand linear spaces, its basis and dimension with corresponding applications in
the field of computer science
24
.
▪ Learn and apply the concept of eigen values, eigen vectors, diagonalisation of matrices and
orthogonalization in inner product spaces for understanding physical and engineering problems
Learning Resources:
Category :
Course Code : BC23-204
Course Title : English Semester : Second
L-T-P : 3-1-0 Credit:4
Pre-Requisites:
Detailed contents
1. Vocabulary Building
1.1 The concept of Word Formation: Compounding, Backformation, Clipping, Blending.
1.2 Root words from foreign languages and their use in English
1.3 Acquaintance with prefixes and suffixes from foreign languages in English to form derivatives.
1.4 Synonyms, antonyms, and standard abbreviations: Acronyms
25
4. Nature and Style of sensible Writing
4.1 Describing
4.2 Defining
4.3 Classifying
4.4 Providing examples or evidence
4.5 Writing introduction and conclusion
5. Writing Practices
5.1 Comprehension
5.2 Précis Writing
5.3 Essay Writing
5.4 Business Letter, Cover Letter & CV; E-mail
Learning Resources:
Course Outcomes
The student will acquire basic proficiency in English including reading and listening
comprehension, writing and speaking skills.
26
Course code: BC23-292 Category:
Course Title: Data Structure using C Laboratory Semester: II
The laboratory should be preceded or followed by a tutorial to explain the approach or algorithm to be
implemented for the problem given.
List of Practical:
1) Honing ‘Listening Skill’ and its sub skills through Language Lab Audio device;
2) Honing ‘Speaking Skill’ and its sub skills
3) Helping them master Linguistic/Paralinguistic features (Pronunciation/Phonetics/
Voice modulation/ Stress/ Intonation/ Pitch &Accent) of connected speech
27
6) G D Practice Sessions for helping them internalize basic Principles
(turn- taking, creative intervention, by using correct body language, courtesies & other soft
skills) of GD
7) Honing ‘Reading Skills’ and its sub skills using Visual / Graphics/ Diagrams /Chart
Display/Technical/Non Technical Passages/Learning Global / Contextual / Inferential
Comprehension;
8) Honing ‘Writing Skill’ and its sub skills by using Language Lab Audio –Visual input; Practice
Sessions
Course Outcomes
• The student will acquire basic proficiency in English including reading and listening
comprehension, writing and speaking skills.
Course Title : Software Engineering
Course code: BC23-301
LTP: 3-1-0
Credit: 4
Unit Conten t
Introduction: Programming in the small vs. programming in the large; software project failures
1 and importance of software quality and timely availability; of software engineering towards
successful execution of large software projects; emergence of software engineering as a
discipline, Software Engineering Historical Development from Jackson Structured
Programming to Agile Development.
Software Project Management: Basic concepts of life cycle models – different models and
2 milestones; software project planning –identification of activities and resources; concepts of
feasibility study; techniques for estimation of schedule and effort; software cost estimation
models and concepts of software engineeringeconomics; techniques of software project
control and reporting;introductiontomeasurementof software size;introduction to the
concepts of risk and its mitigation; configuration management.
3 Software Quality Management and Reliability: Software quality; Garvin’s quality dimensions,
McCall’s quality factor, ISO 9126 quality factor; Software Quality Dilemma; Introduction to
Capability Maturity Models (CMM and CMMI); Introduction to software reliability
reliability models and estimation.
Software Requirements Analysis, Design and Construction: Introduction to
4 Software Requirement Specifications (SRS) and requirement elicitation
techniques; techniques for requirement modelling – decision tables, event tables, state
transition tables Petrinets; requirements documentation through use cases; introduction to
UML, introduction to software metrics and metrics-based control methods; measure of code
and design quality.
28
5 Object Oriented Analysis, Design and Construction: Concepts -- the principles of abstraction,
modularity, specification, encapsulation and information hiding; concepts of abstract data
type; Class Responsibility Collaborator (CRC) model; quality of design; design
measurements; concepts of design patterns; Refactoring; object-oriented construction
principles; object oriented metrics.
6 Software Testing: Introduction to faults and failures; basic testing concepts; concepts of
verification and validation; black box and white box tests; white box test coverage – code
coverage, condition coverage, branch coverage; basic concepts of black-box tests –
equivalence classes, boundary value tests, usage of state tables; testing use cases; transaction
based testing; testing for non-functional requirements – volume performance and
efficiency; concepts of inspection; Unit Testing, Integration Testing, System Testing and
Acceptance Testing.
7 Agile Software Engineering: Concepts of Agile Methods, Extreme Programming; Agile
Process Model
- Scrum, Feature; Scenarios and Stories
Detailed Content
Unit I.
Unit II.
Processes and Threads: Processes and Programs, Programmer view of Processes, OS view ofProcesses, Threads,
Case studies of Processes and Threads.
Unit III.
Memory Management: Managing the Memory Hierarchy, Static and Dynamic Memory Allocation,
Memory Allocation to a Process, Reuse of Memory, Contiguous Memory Allocation, Noncontiguous Memory
Allocation,Paging,Segmentation, SegmentationwithPaging, KernelMemoryAllocation, Virtual Memory: Virtual
29
Memory Basics, Demand Paging, Page Replacement Policies, Memory Allocation to a Process, Shared Pages,
Memory Mapped Files, Unix Virtual Memory, Linux Virtual Memory, Virtual Memory using Segmentation.
Unit IV.
Security and Protection: Overview of Security and Protection, Goals of Security and Protection, Security Attacks,
Formal and Practical aspects of Security, Encryption, Authentication and Password Security, Access
Descriptors and the Access Control Matrix, Protection Structures, Capabilities, Unix Security, Linux Security,
WindowsSecurity
TEXT BOOK:
• Silberschatz et.al.-Operating System Concepts , 6th Edition, John Wiley Inc., 2003
• H.M. Deitel -Operating Systems , 6th Edition, Pearson Education, 2006
• Robbins- Linux Programming by Example- Pearson Education, New Delhi- 2005
• Sumitabh Das : Your UNIX The Ultimate Guide; TMH
REFERENCE BOOKS:
• D.M. Dhandhare - Operating Systems, 2nd Edition, Tata McGraw Hill, New Delhi, 2006
• J.Goerzen- Linux Programming Bible, IDG Books, New Delhi- 2001
• N.Mathew & R.Stones- Beginning Linux Programming Wiley Publishing India, 2004.
• S.E. Mandnick & J.J. Donovan : Operating System; TMH
Computer graphics - Co-ordinate systems, Homogenous co-ordinate systems, line drawing algorithms,
circle drawing algorithms, Two- dimension transformations (rotation, scaling, sharing etc).
Email services and protocols (X400, SMTP, UUCD, PPP, POP), FTP.
Web publishing - HTTP, browsers (naming), Introduction to HTML, Java script, use of Java applets
within HTML files, ASP (Cookies and database connectivity only).
Books:
1. Procedural & Mathematical Elements in Computer Graphics, Rogers, TMH
30
2. Computer Graphics, Hearn & Baker,PHI
3. Computer Graphics, EXCEL BOOKS
4. Introduction to Computer Graphics, A. Mukherjee, VIKAS 5.Fundamentals of Computer Graphics
& Multimedia, Mukherjee,PHI 6.Beginning ASP 3.0, Baser,SPD/WROX
5. Dynamic HTML,Goodman,SPD/O’REILLY
6. HTML Black Book , Stephen Holzner, Wiley Dreamtech 9.ASP 3.0 programming Bible,Eric A.
Smith, Wiley Dreamtech 10.Computer Graphics, Bhandari & Joshi, EPH
Procedural programming, An Overview of C: Types Operator and Expressions, Scope and Lifetime, Constants,
Pointers, Arrays, and References, Control Flow, Functions and Program Structure, Namespaces, error handling, Input
and Output (C-way), Library Functions (string, math,stdlib), Command line arguments, Pre-processor directive
Some difference between C and C++: Single line comments, Local variable declaration within function scope, function
declaration, function overloading, stronger type checking, Reference variable, parameter passing– value vs.
reference, passing pointer by value or reference, #define constant vs const, Operator new and delete, the
typecasting operator, Inline Functions in contrast tomacro, default arguments
The Fundamentals of Object Oriented Programming: Necessity for OOP, Data Hiding, Data Abstraction,
Encapsulation, Procedural Abstraction, Class and Object.
More extensions to C in C++ to provide OOP Facilities: Scope of Class and Scope Resolution Operator,
Member Function of a Class, private, protected and public Access Specifier, this Keyword,Constructors
and Destructors, friend class, error handling (exception)
Text Books:
• Programming – Principles and Practice Using C++, Bjarne Stroustrup, Addison Wesley.
• The Design and Evolution of C++, Bjarne Stroustrup, Addison Wesley.
31
Course Title : Management and Accounting
Course code: BC23-305
LTP: 3-1-0
Credit: 4
Cost-volume profit relationship, budgeting, cost accumulation system, variable and absorption
costing system Financial accounting computer packages
Source of finance long term and short term. Financial institution – IDBI, ICICI, IFCI and
Commercial Banks.
Books:
3.Cost Accounting-An Introduction, Nigam & Jain, PHI 4.Management Accounting, Pande,
VIKAS
32
Credit: 2
The laboratory should be preceded or followed by a tutorial to explain the approach or
algorithm to be implemented for the problem given.
1. Implement in C the following UNIX commands using System calls: cat and mv.
2. Write a program in C to determine the size of a file using the lseek command.
3. Write a program to calculate the number of blocks assigned for the file.
4. Write a C program that deletes a directory with all its subfolders. The name of the directory
should be read from the command line.
5. Write a program that deletes every 5th byte from a file, but without using a temporary file or
allocating a buffer in the memory.
6. Write a program in C to implement FCFS CPU scheduling Algorithm.
7. Write a program in C to implement SJF CPU scheduling Algorithm.
8. Write a program in C to implement Priority CPU scheduling Algorithm.
9. Write a program in C to implement Round Robin ( RR ) CPU scheduling Algorithm.
10.Write a program in c to read from the buffer & produce desired output.
11. Write a program in C to create Userid & Password.
12. Write a program in c to implement and find how many Users currently login in NetWork.
13. Write a program in c to create your own system call just like a copy. Write a program in c to create
your won system call just like a delete.
14. Write a program in c to find the Disk Space.
15. Write a program In C to find The number of pages in the process.
16. Write a program In C to find The number of frames allocated to the process.
17. Write a program in c to find the no. of blocks occupied by a file.
18.Write a program in c to create your won system call just like a delete.
19. Write a program in c to create your won system call just like a ls.
20. Write a program in c to find a PID no. of any Process
** Faculty may add or remove experiments as per syllabus requirements.
33
• Write a C++ program to display “Hello, Welcome to C++ Programming”
• Write a C++ program to print details name, roll number in a single and two lines.
• Write a C++ program to print name by reading, assigning and initializing to a variable with
an appropriate prompt.
• Write a C++ program to print your personal details name, surname (single character),total
marks, gender(M/F), result(P/F) by taking input from the user.
Exercise 2
• Write a C++ program to read a sequence of double values into a vector. Think of each value
as the distance between two cities along a given route. Compute and print the total distance.
Find and print the smallest and greatest distance between two neighboring cities. Find and
print the mean distance of the neighboring cities.
• Write a C++ program to convert decimal to binary.
• Write a C++ program to print the accepted number and its reverse number.
• Write a C++ program to read marks in 6 subjects using vectors and find average marks
Exercise 4
• Write a C++ program to read names using vector and display the names and their count.
• Write a C++ program to read a number between 1 and 100 and the program asks questions to
figure out what the number is (e.g. “Is the number you are thinking of less than 50?”). Your
program should be able to identify the number after asking no more than seven questions.
Hint: use the < and <= operators and the if-else statement.
• Develop a simple calculator using if-else if and switch-case.
Exercise 5
• Write a C++ program to find the sum of individual digits of a positive integer.
• Make a vector holding the ten strings “zero”, “one”, … , ”nine”. Use that in a program that
convertsa digits to its corresponding spelled out values; e.g. the input 5 gives the output five.
Have thesame program, using the same input loop, convert spelled out numbers into their digit
form; e.g., the input five gives the output 5.
• Write a C++ program to find all the prime numbers between 1 and 100. Write a function to do
this.
Exercise 6
34
• To swap characters
• To swap two reals
• Write a C++ program that reads a series of numbers and stores them in a vector<int>. After the
user inputs all the numbers he wishes to, ask how many of the numbers the user wants to sum. For an
answer N, print the sum of the first N elements of the vector. For example “Please enter some
numbers (press ‘0’ at prompt to stop):”
• 12 23 13 24 15 “Please enter how many of the numbers you wish to sum, starting from the first:” 3 “The
sum of the first 3 numbers: 12 23 and 13 is 48”
• Write a C++ program that writes out the Fibonacci series. Find the largest Fibonacci number that fits
in an int.
Exercise 7
• Define a class name_value that holds a string and a value. Give it a constructor (a bit like Token).
Use vector<name_value> instead of two vectors.
• Create a class employee that includes firstname( type String), lastname(type String) and a
monthly salary. Create two employee objects and display each object’s yearly salary. Give each
employee a 10¿ raise and display each employee’s yearly salary.
Exercise 8
• Write a C++ program that reads digits and computes them into integers. For example 123 is read as
the characters 1,2 and 3. The program should output “123 is 1 hundred and 2 tens and 3 ones”. The
number should be output as an int value. Handle numbers with one, two, three or four digits.
Hint: to get the integer value 5 of the character ‘5’ subtract ‘0’ that is ‘5’-‘0’==5.
• Provide name constants that you really can’t change the value of. Hint: you have to add a member
to variable that distinguishes between constants and variables and check for it in set_value(). If
you want to let the user define constants. You’ll have to add a notation to let the user express
that, for example, const pi=3.14.
Exercise 9
• Write a function print() that prints a vector of ints to cout. Give it two arguments; a string
for “labeling” the output and a vector.
• Write two functions that reverse the order of elements in a vector<int>. The first reverse
function should produce a new vector with the reversed sequence, leaving its original vector
unchanged. The other reverse function should reverse the elements of its vector without using
any other vectors.
Exercise 10
• Write a function randint() that produces a pseudo-random number in the range [0:MAXINT].
• Write a function that using randint() from the previous exercise. Computes a pseudorandom
integer in the range(a:b). rand_in_range(int a, int b).
• Write a function that finds the smallest and the largest element of a vector argument and
also computes the mean and the median. Do not use global variables. Either return a struct
containing the results or pass them back through reference arguments.
Exercise 11
• Write a function that takes a vector<string> argument and returns a vector<int> containing the
number of characters in each string. Also find the longest and the shortest string and the
lexicographically first and last string.
35
• Write a function that given two vector<double> price and weight computes a value (an “index”)
that is the sum of all price[i]*weight[i]. Note that we must have weight.size()<=price.size().
Exercise 12
• Write a C++ program that creates a file of data in the form of the temperature. Fill the file with at
least 50 temperature readings. Call this program store_temps.cpp and the file it creates
raw_temps.txt.
• Write a C++ program that accepts two file names and produces a new file that is the contents
ofthe first file followed by the contents of the second; that is, the program concatenates the two
files.
Exercise 14
• Write a C++ program that given a file name and a word outputs each line that contains that word
together with the line number. Hint:getline().
• Write a C++ program that reads a text file and converts its input to all lower case, producing a new
file.
Exercise 15
• Write a C++ program that replaces punctuation with whitespace. For example, “don’t use the as-if
rule” becomes dont use the asif rule”.
• Write a C++ program to reverse the order of characters in a text file. For example, asdfghjkl
becomes lkjhgfdsa.
Exercise 16
• Write a C++ program that reads a text file and writes out how many characters of each character
classification are in the file.
• Write a C++ program draw a rectangle as a rectangle and as a polygon. Make the lines of the polygon
red and the lines of the rectangle blue.
Exercise 17
• Write a C++ program to draw a box with rounded corners. Define a class box, consisting of four
lines and four arcs.
• Write a C++ program to draw a line with an arrowhead by defining a class arrow.
Exercise 19
• Define a class poly that represents a polygon but checks that its points really do make a polygon in
its constructor. Hint: you’ll have to supply the points to the constructor.
36
• Define a class star. One parameter should be the number of points. Write a C++ program to draw a
few stars with differing numbers of points, differing line colors, and differing fill colors.
• Define two classes smiley and frowny, which are both derived from class circle and have two eyes
and a mouth. Next, derive classes from smiley and frowny, which add an appropriate hat to each.
Exercise 20
• Write a C++ program to write a function void to_lower(char* s) that replaces all uppercase
characters. Don’t use any standard library functions.
• Write a C++ program to write a function, char* findx(const char* s, const char* x), that finds
the first occurrence of the string x in s.
Exercise 21
• Write a C++ program that reads characters from cin into an array that you allocate on the free
store. Read individual characters until an asterisk (*) is entered. Do not use a std::string.
• Write a C++ program to write a function, char* strdup(const char*) that copies a string
intomemory it allocates on the free store. Use the dereference operator * instead.
Exercise 22
• Write a C++ program to write a function char* findx(const char* s, const char* x) that find the first
occurrence of the string x in s. Use dereference operator * instead.
Exercise 23
• Write a C++ program to write a function template for finding the minimum value
contained in any array.
• Write a template function that takes a vector<T>vt and a vector<U> vu as arguments and
returnsthe sum of all vt[i]*vt[i]s.
• Define a class Int having a single member of class int. Define constructors, assignment, and
operators +,-,*,/ for it.
• Implement vector::operator=() using an allocator for memory management.
Exercise 24
• Define a file handle class with a constructor that takes a string argument (filename), opens the file in
the constructor, and closes it in the destructor.
• Define an input and an output operator (>> and <<) for vector.
• Given a list<int> as a (by-reference) parameter, make a vector<double> and copy the elements of
the list into it. Verify that the copy was complete and correct. Then print the elements sorted in
order of increasing value.
** Faculty may add or remove experiments as per syllabus requirements.
37
Developing web pages with HTML, Using ASP, Creating and experimenting with computer graphics.
(with C- Language)
** Faculty should add experiments as per syllabus requirements and maintain a laboratory manual.
Detailed content
Data models: Entity-relationshipmodel, network model, relational and object oriented data
models, integrity constraints, data manipulation operations.
Relational algebra, Tuple and domain relational calculus, SQL3, DDL and DML constructs, Open source
and Commercial DBMS - MYSQL, ORACLE, DB2, SQLserver.
Authentication, Authorization and access control, DAC,MAC and RBAC models, Intrusion detection,
SQL injection.
Object oriented and object relational databases, Logical databases, Web databases, Distributed
databases, Data warehousing and data mining.
38
Course Title: Numerical Methods
Course code:- BC23-402
LTP: 3-1-0
Credit: 4
Unit: 1 Approximation in numerical computation: Truncation and rounding errors, Fixed and floating- point
arithmetic, Propagation of errors.
Unit 2: Interpolation: Newton forward/backward interpolation, Lagrange’s and Newton’s divided difference
Interpolation.
Unit 3: Numerical integration: Trapezoidal rule, Simpson’s1/3 rule, Expression for corresponding error terms.
Unit 4: Numerical solution of a system of linear equations: Gauss elimination method, Matrix inversion, LU
Factorization method, Gauss-Seideliterative method
Unit 6: Numerical solution of ordinary differential equation: Euler’s method, Runge-Kutta methods, Predictor-
Corrector methods and Finite Difference method.
Web Development:
39
HTML, Structure, Tags, Lists, Table, Link and it’s types ,Images, Form, Frame, Style sheets and it’s
type
Introduction to Java:
Java and Java applications, Java Virtual Machine(JVM), Java Runtime Environment(JRE)Java
Development Kit(JDK,) Byte code, Java characteristics, Object oriented Programming, Simple java
programs, Data types, Operators, Expressions, control statements, Selection statements,
Iteration statements, Jump statements
Classes, Inheritance :
Classes in java, Declaring a class, Creating instances of class, Constructors, Argument Passing, use
of static keyword, Innner class. Method overloading, Inheritance, use of super keyword ,Method
overriding, Abstract class, Dynamic method dispatch, use of final keyword
Interface, Package:
Package, Acesss control mechanism, Interface, Dynamic Method look up
Exception Handling:
Java Exception Handling Mechanism, try, catch, throw, throws and finally, Exception types, Built
in Exceptions: checked and unchecked exceptions, User defined Exceptions
String Handling:
String and String Buffer, Constructors, String operations : character extractions, String
comparisons, searching, strings, modifying a string. To String() and valueOf() methods, String
Buffer operations
Java I/O Stream:
I/O basics, Byte stream, Character stream, Reading console input, Writing console output,
Reading and writing files
Java Utility package:
Collection overview, Collection interfaces, Collection classes: ArrayList, LinkedList, Accessing a
collection using, iterator and for-Each statement
Applet:
Applet class, Applet architecture, Applet Skeleton, Life cycle methods, setForeground() and set
Bachground()methods, Using the status window,HTML Applet tag, Passing parameters to an
applet, GetCodebase() and Get Documentbase() methods.
Event Handling and AWT:
Delegation Event Model, Event classes, Sources of Events, Event Listener interfaces, Event
handling using adapter class, Inner and anonymous class, AWT classes: Label,Button,TextField
etc.
JDBC: Connectivity to database
40
Science, Technology and Engineering as Knowledge and as Social and Professional Activities (2
lectures)
Effects of Technological Growth: Rapid Technological growth and depletion of resources. Reports
of the Club of Rome. Limits of growth; sustainable development( 2 lectures)
Human Operator in Engineering projects and industries. Problems of man machine interaction.
Impact of assembly line and automation. Human centered Technology (4 lectures)
Ethics of Profession
Engineering profession: Ethical issues in engineering practice. Conflicts between business demands
and professional ideals. Social and ethical responsibilities of Technologists. Codes of professional
ethics. Whistle blowing and beyond. Case studies. (8 lectures)
Societal values: The modern search for a ‘good’ society, justice, democracy, secularism, rule of law;
values in Indian Constitution. (4 lectures)
Moral and ethical values: Nature of moral judgments; canons of ethics; ethics of virtue; ethics of
duty; ethics of responsibility
Books:
41
Course Title: Database Management System Laboratory
Course code: BC23-491
LTP:0-0-4
Credit: 2
42
Structured Query Language
1. Creating Database
• Creating a Database
• Creating a Table
• Specifying Relational Data Types
• Specifying Constraints
• Creating Indexes
43
1. Write a program to input two numbers and find its sum.
2. Write a program to input principal amount, rate and time. Calculate its simple interest and
compound interest.
3. Write a program to input the radius of any circle and find its area and perimeter.
4. Write a program to input a number and check it is positive or negative.
5. Write a program to input the marks of three subject (Out of 100) and calculate its percentage, total
marks, total distinction in subjects and display fail if he/she gets marks less vthan 30 in any one of
the subjects.
6. Write a program to input three numbers and find the greatest
(i) By using nested if statement
(ii) By using Ternary Operator
7. Write a program to input two numbers and perform addition, substraction and multiplication by
using switchstatement.
8. Write a program to implement relational operator.(>,<,<=,=>,==,!=)
9. Write a program to implement bitwise operators.(&,|,^,~)
10. Write a program to implement shift operators. (<<,>>)
11. Write a program to display odd and even numbers between 5 to 50 and also display its sum
separately.
12. Write a program to display and the sum of all numbers between 15 to 100, which is divisible by 7.
13. Write a program to input two numbers and swap them
(I) By using third variable.
(II) Without using third variable (Two methods)
14. Write a program to implement
the following series:-(1) 1 3 5 9
(2) 2 5 10 17 26 37
(3) 0 6 24 60 120 210
(4) 2 10 30 68 130 222
(5) 1 2 4 8 16 32
15. Write a program to create your own package and use it in your program.
16. Write a program to input a number and check it is prime or not.
17. Write a program to input a number and check it is palindrome or not.
18. Write a program to display all Armstrong numbers between 123 to 999.
19. Write a program to input a number and find all the prime number between 5 to 100
19. Write a program to input a decimal number and convert it into binary.
20. Write a program to input a binary number and convert it into decimal.
21. Write a program to input an octal number and convert it into decimal.
44
22. Write a program to input a decimal number and convert it into octal.
23. Write a program to input the elements of array and sort them by using selection sort.
24. Write a program to input a key element and search it from the given array.
25. Write a program to find the greatest and smallest element of the array.
26. Write a program to enter a number and find its factorial by using recursion.
27. Write a program to enter three numbers and find its GCD by using recursion.
28. Write a program to generate Fibonacci series by using recursion.
29. Write a program to input the elements of 3X3 matrix and display in matrix format.
30. Write a program to input the elements of 3X3 matrix and check it is symmetric or not.
31. Write a program to input the elements of 3X3 matrix and display the principal and
reverse diagonal elements of the matrix.
32. Write a program to input the elements of 3X3 matrix and check it is sparse or dense.
33. Write a program to perform addition, substraction and multiplication of two matrix.
34. Write a program to implement all the pre-defined methods related to String .
35. Write a program to enter a string and perform:-
(1) the length of string
(2) reverse of string
(3) number of vowels
36. Write a program to implement default constructor.
37. Write a program to implement parametric constructor.
38. Write a program to implement constructor overloading.
39. Write a program to calculate factorial of any number by using default constructor.
40. Write a program to generate the following series by using default constructor
(1) 0 1 1 2 3 5 …… up to n terms.
(2) 2 3 5 8 13 21 ............. up to n terms.
41. Write a program to input n and r and implement permutation and combination.
42. Write a program to implement method overloading.
43. Write a program to implement single inheritance.
44. Write a program to implement multiple inheritances by using interface class.
45. Write a program to implement multilevel inheritance.
46. Write a program to implement hierarchal inheritance.
47. Write a program to implement abstract class.
48. Write a program to create your own package and use it in your program.
49. Write a program to implement exception handling:-
By using Arithmetic Exception, Array Index Out of Bounds Exception, Number Format Exception and
Input Mismatch Exception
50.Programs in HTML CSS
** Faculty may modify experiments as per syllabus requirements.
45
Course Title: Computer Networks Semester: V
Detailed content
Unit 1:
Data communication Components: Representation of data and its flow Networks, Various Connection
Topology, Protocols and Standards, OSI model, Transmission Media, LAN: Wired LAN, Wireless LANs,
Connecting LAN and Virtual LAN, Techniques for Bandwidth utilization:Multiplexing - Frequency division,
Time division and Wave division, Concepts on spread spectrum.
Unit 2:
Data Link Layer and Medium Access Sub Layer: Error Detection and Error Correction -
Fundamentals, Block coding, Hamming Distance, CRC; Flow Control and Error control
protocols - Stop and Wait, Go back –
N ARQ, Selective Repeat ARQ, Sliding Window, Piggybacking, Random Access, Multiple access
protocols -Pure ALOHA, Slotted ALOHA,CSMA/CD,CDMA/CA.
Unit 3:
Network Layer: Switching, Logical addressing – IPV4, IPV6; Address mapping – ARP, RARP, BOOTP and
DHCP–Delivery, Forwarding and Unicast Routing protocols.
Unit 4:
Unit 5:
Application Layer: Domain Name Space (DNS), DDNS, TELNET, EMAIL, File Transfer
Protocol (FTP),WWW, HTTP, SNMP, Bluetooth, Firewalls, Basic concepts of Cryptography.
Course Objectives:
46
• To acquire Object Oriented Skills in Python
• To develop the skill of designing Graphical user Interfaces in Python
• To develop the ability to write database applications in Python
Learning Outcomes:
At the end of the course, the student will be able to
• Explain basic principles of Python programming language
• Implement object oriented concepts,
• Implement database and GUI applications.
Unit – I
Introduction to Python, use IDLE to develop programs, Basic coding skills, working withdata
types and variables, working with numeric data, working with string data, Python functions,
Boolean expressions, selection structure, iteration structure, Illustrative Programs.
Unit – II
Define and use functions and modules, working with recursion, Basic skills for working with
lists, work with a list of lists, work with tuples, work with dates and times, get started with
dictionaries, Illustrative programs.
Unit – III
An introduction to file I/O, use text files, use CSV files, use binary files, Handle a single
exception, handle multiple exceptions, Illustrative programs.
Unit – IV
Object Oriented Programming, An introduction to classes and objects, define a class, work
with object composition, work with encapsulation, work with inheritance, override object
methods, Illustrative programs.
Unit –V
An introduction to relational databases, SQL statements for data manipulation, Using SQLite
Manager to work with a database, Using Python to work with a database, Creating a GUI that
handles an event, working with components, Illustrative programs.
47
LTP:3-1-0
Credit: 4
Introduction: Characteristics of algorithm.Analysis of algorithm: Asymptotic analysis of complexity
1 bounds – best, average and worst-case behavior; Performance measurements of Algorithm, Time and
space trade-offs, Analysis of recursive algorithms through recurrence relations:
Substitution method, Recursion tree method andMasters’ theorem
Fundamental Algorithmic Strategies: Brute-Force, Greedy, Dynamic Programming, Branch and-
2 Bound and Backtracking methodologies for the design of algorithms; Illustrations of these techniques
for Problem-Solving, Bin Packing, Knap Sack TSP. Heuristics –characteristics and their application
domains.
Graph and Tree Algorithms: Traversal algorithms: Depth First Search (DFS) and Breadth First
3 Search(BFS); Shortest
Path algorithms, Transitive closure, Minimum Spanning Tree, Topological sorting,
Network Flow Algorithm.
Tractable and Intractable Problems: Computability.
4 Design of Algorithms, Computability classes – P, NP, NP-complete and NP-hard. Cook’s theorem,
Standard NP-complete problems and Reduction techniques.
48
Credit: 2
1. NIC Installation & Configuration (Windows/Linux).
2. .Understanding IP address, subnet etc.
Familiarization with
49
Operator overloading, inheritance, Polymorphism etc.
• At the end of the course students will able to simulate the problem in the subjects like web
pages, Computer networks and real world problems
1. Calculate Simple interest where principal amount, rate and time will be entered by user
2. Program to calculate the following:
a. Area of a triangle using hero’s formula
b. Area of triangle in case height and base of triangle is given by user
c. Area and perimeter of rectangle
d. Area and perimeter of square
e. Area and perimeter of trapezium
f. Area and perimeter of parallelogram
g. Area and perimeter of circle
h. Area and volume of cube
i. Area and volume of cuboid
j. Area and volume of sphere
3. Program to check largest number among three numbers
4. Program to solve quadratic equation
5. Program to convert Celsius to Fahrenheit
6. Program to convert Fahrenheit to Celsius
7. Program to input marks of 5 subjects and calculate percentage and division obtained by a
student
8. Program to check whether inputted number is even number or odd number.
9. Program to input a year and check is it a leap year or not?
10. Program to check an entered number is Armstrong or not?
11. Program to print all the even number between the given range.
12. Program to print all the odd number between the given range.
13. Program to calculate the sum of all natural numbers between the given interval.
14. Program to print all the Armstrong number between the given range.
15. Program to check a number is prime or not.
16. Program to print all the prime number between the given range.
17. Program to check a number is palindrome or not?
18. Program to print the reverse of the given number
19. Program to print Fibonacci series up to n terms.
20. Program to find the factorial of the number
21. Program to display the multiplication table of a given number.
22. Program to find LCM
50
5. Program to print prime no in the given interval using function. Interval must be entered by
user.
6. Program to find factorial of entered number using recursive function
7. Program to print Fibonacci series using recursive function
8. Program to find the sum of n natural number using recursive function
9. Program to implement different arithmetic operation using modular approach
10. Program to implement conversion of different units into another using modular approach
Program Based on File Handling:
1. Python program to create a text file, write the content of the file from console and print its
content on the console.
2. Python program to append an existing file and display the contents of the updated file
on the screen.
3. Python program to copy the content of a file into another file.
4. Python program to concatenate two files into third file.
5. Python program to rename the file.
Program based on exceptional handling:
1. Python program to handle “Zero Division Error” exception
2. Python program to handle “Value Error” exception
3. Python program to handle “File Not Found” exception
4. Python program to handle “Index Error” exception
Program Based on Class
1. Create a class student. Define a function to input a name and display the name through object.
2. Create a class Employee. Define a function to take employee data as input and display the
data
Program Based on GUI
1. Design an interface to take input of two numbers in different text box and by click on
ADD button, display the sum of those entered number.
2. Design an interface to take input of your name. Display the name on click of DISPLAY
button.
51
Introduction , components of the environment, environmental degradation
Air Pollution and Control: Atmospheric composition, energy balance, climate, weather, dispersion,
sources and effects of pollutants, primary and secondary pollutants, green house effect, depletion
of ozone layer, standards and control measures.
Water Pollution and Control: Hydrosphere, natural water, pollutants: their origin and effects, river
/ lake / ground water pollution, standards and control.
Books:
52
Credit: 4
Unit Content
1 Introduction
Background, Digital Image Representation, Fundamental steps in Image
Processing, Elements of Digital Image Processing - Image Acquisition, Storage,
Processing, Communication, Display.
Digital Image Formation
2 A Simple Image Model, Geometric Model- Basic Transformation (Translation,
Scaling, Rotation), Perspective Projection, Sampling & Quantization
-Uniform & Non uniform.
Mathematical Preliminaries
3 Neighbour of pixels, Connectivity, Relations, Equivalence & Transitive
Closure; Distance Measures, Arithmetic/Logic Operations, Fourier
Transformation, Properties of The Two Dimensional Fourier Transform,
Discrete Fourier Transform, Discrete Cosine & SineTransform.
4. Image Enhancement
Spatial Domain Method, Frequency Domain Method, Contrast Enhancement -
Linear & Nonlinear Stretching, Histogram Processing;
Smoothing - Image Averaging, Mean Filter, Low-pass Filtering; Image
Sharpening. High- pass Filtering, High- boost Filtering, Derivative Filtering,
Homomorphic Filtering; Enhancement in the frequency domain - Low pass
filtering, High pass filtering.
5 Image Restoration
Degradation Model, Discrete Formulation, Algebraic Approach to Restoration -
Unconstrained & Constrained; Constrained Least Square
Restoration, Restoration by Homomorphic Filtering, Geometric Transformation
Spatial Transformation, Gray Level Interpolation.
6 Image Segmentation
Point Detection, Line Detection, Edge detection, Combined detection,
Edge Linking & Boundary Detection - Local Processing, Global
Processing via The Hough Transform; Thresholding - Foundation, Simple
Global Thresholding, Optimal Thresholding; Region Oriented
Segmentation - Basic Formulation, Region Growing by Pixel Aggregation,
Region Splitting & Merging.
TEXT BOOKS:
1. Cryptography and Network Security - Principles and Practice: William Stallings, Pearson
2. Cryptography and Network Security: Atul Kahate, Mc Graw Hill, 3rd Edition.
REFERENCE BOOKS:
53
1. Cryptography and Network Security: C K Shyamala, N Harini, Dr T R Padmanabhan, Wiley
2. Cryptography and Network Security: Forouzan Mukhopadhyay, Mc Graw Hill, 3rd Edition.
Unit Content
1. Basics of pattern recognition
54
Course code:BC23-E501C
LTP: 3-1-0
Credit: 4
Objective:
1. To understand and list the different stages in the process of compilation.
2. Identify different methods of lexical analysis
3. Design top-down and bottom-up parsers
4. Identify synthesized and inherited attributes
5. Develop syntax directed translation schemes
6. Develop algorithms to generate code for a target machine
Compilers, Analysis of the source program, The phases of the compiler, Cousins of the compiler.
The role of a parser, Context freegrammars, Writing a grammar, Top downParsing, Non- recursive
Predictive parsing (LL), Bottom up parsing, Handles, Viable prefixes, Operator precedence parsing, LR parsers
(SLR, LALR), Parser generators (YACC).Error Recovery strategies for different parsing techniques.
Sourcelanguageissues (Activationtrees,Controlstack,scopeofdeclaration,Bindingofnames),Storage
organization(Subdivisionofrun-timememory,Activationrecords),Storageallocationstrategies, Parameter
passing (call by value, call by reference, copy restore, call by name), Symboltables, dynamic storage allocation
techniques
55
Unit 8: Code optimization
Introduction, Basic blocks & flow graphs, Transformation of basic blocks, Dag representation of basic blocks,
The principle sources of optimization, Loops in
Issues in the design of code generator, a simple code generator, Register allocation &assignment.
1. Aho, Sethi, Ullman - “Compiler Principles, Techniques and Tools” - Pearson Education.
2. Holub - “Compiler Design in C” - PHI.
Course Outcomes:
56