# BSc.CSIT Second Semester Syllabus |TU Syllabus

0
1258 ## BSc.CSIT Second Semester Syllabus Overview

Syllabus of BSc.CSIT Second Semester comprises five compulsory courses that include Discrete Structures, Object-Oriented Programming, Microprocessor, Mathematics II, and Statistics I. They are a total of 15 credit hours with a total of 500 full marks.

BSc.CSIT Second Semester course code is shown below in table:

### Course Title 1: Discrete Structures

Full Marks: 60 + 20 + 20

Course No: CSC160

Pass Marks: 24 + 8 + 8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: II

Course Description: The course covers fundamental concepts of discrete structure like introduce logic, proofs, sets, relations, functions, counting, and probability, with an emphasis on applications in computer science.

Course Objectives: The main objective of the course is to introduce basic discrete structures, explore applications of discrete structures in computer science, understand concepts of Counting, Probability, Relations and Graphs respectively.

Course Contents:

#### Unit 1:  Basic Discrete Structures (7 Hrs.)

1.1.Sets: Sets and Subsets, Power Set, Cartesian Product, Set Operations, Venn Diagram, Inclusion-Exclusion Principle, Computer Representation of Sets

1.2.Functions: Basic Concept, Injective and Bijective Functions, Inverse and Composite Functions, Graph of Functions, Functions for Computer Science (Ceiling Function, Floor Function, Boolean Function, Exponential Function), Fuzzy Sets and Membership Functions, Fuzzy Set Operations

1.3.Sequences and Summations: Basic Concept of Sequences, Geometric and Arithmetic Progression, Single and Double Summation

#### Unit 2: Integers and Matrices (6 Hrs.)

2.1.Integers: Integers and Division, Primes and Greatest Common Divisor, Extended Euclidean Algorithm, Integers and Algorithms, Applications of Number Theory (Linear

Congruencies, Chinese Remainder Theorem, Computer Arithmetic with Large Integers)

2.2.Matrices: Zero-One Matrices, Boolean Matrix Operations

#### Unit 3: Logic and Proof Methods (6 Hrs.)

3.1.Logic: Propositional Logic, Propositional Equivalences, Predicates and Quantifiers, Negation of Quantified Statements, Proof of quantified statements, Nested Quantifiers, Rules of Inferences

3.2.Proof Methods: Basic Terminologies, Proof Methods (Direct Proof, Indirect Proof, Proof by Contradiction, Proof By Contraposition, Exhaustive Proofs and Proof by  Cases), Mistakes in Proof

#### Unit 4: Induction and Recursion (5 Hrs.)

4.1.Induction: mathematical Induction, Strong Induction and Well Ordering, Induction in General

4.2.Recursive Definitions and Structural Induction, Recursive Algorithms, Proving Correctness of Recursive Algorithms

#### Unit 5: Counting and Discrete Probability (9 Hrs.)

5.1.Counting: Basics of Counting, Pigeonhole Principle, Permutations and Combinations, Two Element Subsets, Counting Subsets of a Set, Binomial Coefficients, Generalized

Permutations and Combinations, Generating Permutations and Combinations

5.2.Discrete Probability: Introduction to Discrete Probability, Probability Theory, Probability Calculation in Hashing, Expected Value and Variance, Randomized Algorithms

5.3.Advanced Counting: Recurrence Relations, Solving Recurrence Relations (Homogeneous and Non-Homogeneous equations), Introduction to Divide and Conquer Recurrence Relations

#### Unit 6: Relations and Graphs (12 Hrs.)

6.1.Relations: Relations and their Properties, N-ary Relations with Applications, Representing Relations, Closure of Relations, Equivalence Relations, Partial Ordering

6.2.Graphs: Graphs Basics, Graph Types, Graph Models, Graph Representation, Graph Isomorphism, Connectivity in Graphs, Euler and Hamiltonian Path and Circuits, Matching Theory, Shortest Path Algorithm (Dijkstra’s Algorithm), Travelling Salesman Problem, Graph Coloring

6.3.Trees: Introduction and Applications, Tree Traversals, Spanning Trees, Minimum Spanning Trees (Kruskal’s Algorithm)

6.4.Network Flows: Graph as Models of Flow of Comodities, Flows, Maximal Flows and Minimal Cuts, The Max Flow-Min Cut Theorem

#### Laboratory Works:

The laboratory work consists of implementing the algorithms and concepts discussed in the class.

Student should implement problems with following concepts;

• Set Operations and Boolean Matrix Operations
• Primility Testing, Number Theory Algorithms, and Operations on Integers
• Counting and Some Recursive Algorithms
• Algorithms for Relations, Graphs

Text Books:

1. Kenneth H. Rosen, Discrete mathematics and its applications, Seventh Edition McGraw Hill Publication, 2012.
2. Bernard Kolman, Robert Busby, Sharon C. Ross, Discrete Mathematical Structures, Sixth Edition Pearson Publications, 2015
3. Joe L Mott, Abraham Kandel, Theodore P Baker, Discrete Mathematics for Computer Scientists and Mathematicians, Printice Hall of India, Second Edition, 2008

#### Reference Books:

1.Ken Bogart, Scot Drysdale, Cliff Stein, Discrete Mathematics for Computer Scientists, First Edition Addison-Wesley, 2010

### Course Title 2: Object-Oriented Programming

Full Marks: 60 + 20 + 20

Course No: CSC161

Pass Marks: 24 + 8 + 8

Nature of Course: Theory + Lab

Credit Hrs: 3

Semester: II

Course Description: The course covers the basic concepts of object oriented programming using C++ programming language.

Course Objectives:The main objective of this course is to understand object oriented programming and advanced C++ concepts such as composition of objects, operator overloads, inheritance and polymorphism, file I/O, exception handling and templates.

Course Contents:

#### Unit 1: Introduction to Object Oriented Programming (3 Hrs.)

Overview of structured programming approach, Object oriented programming approach, Characteristics of object oriented languages

#### Unit 2: Basics of C++ programming (5 Hrs.)

C++ Program Structure, Character Set and Tokens, Data Type, Type Conversion, Preprocessor Directives, Namespace, Input/Output Streams and Manipulators, Dynamic Memory Allocation with new and delete, Control Statements.

Functions: Function Overloading, Inline Functions, Default Argument, Pass by Reference, Return by Reference, Scope and Storage Class.

Pointers: Pointer variables declaration & initialization, Operators in pointers, Pointers and Arrays, Pointer and Function.

#### Unit 3: Classes & Objects (8 Hrs.)

A Simple Class and Object, Accessing members of class, Initialization of class objects:

(Constructor, Destructor), Default Constructor, Parameterized Constructor, Copy Constructor,

The Default Copy Constructor, Objects as Function Arguments, Returning Objects from Functions, Structures and Classes, Memory allocation for Objects, Static members, Member functions defined outside the class.

#### Unit 5: Inheritance (7 Hrs.)

Introduction to inheritance, Derived Class and Base Class, Access Specifiers (private, protected, and public), Types of inheritance, Public and Private Inheritance, Constructor and Destructor in derived classes, Aggregation

#### Unit 6: Virtual Function, Polymorphism, and miscellaneous C++ Features (5 Hrs.)

Concept of Virtual functions, Late Binding, Abstract class and pure virtual functions, Virtual Destructors, Virtual base class, Friend function and Static function, Assignment and copy initialization, Copy constructor,  This pointer, Concrete classes, Polymorphism and its roles.

#### Unit 7: Function Templates and Exception Handling (4 Hrs.)

Function templates, Function templates with multiple arguments, Class templates, templates and inheritance, Exceptional Handling (Try, throw and catch), Use of exceptional handling.

#### Unit 8: File handling (6 Hrs.)

Stream Class Hierarchy for Console Input /Output, Unformatted Input /Output, Formatted Input /Output with ios Member functions, Formatting with Manipulators, Stream Operator Overloading, File Input/output with Streams, Opening and Closing files, Read/Write from File, File Access Pointers and their Manipulators, Sequential and Random Access to File, Testing Errors during File Operations

#### Laboratory Works:

Students should be able to implement the concepts of Object Oriented Programming using C++ language.

Text Book:

1. Robert Lafore, Object Oriented Programming in C++, Fourth Edition, SAMS publications.
2. Herbert Schildt, C++ The Complete Reference, Fourth Edition, Tata McGraw Hill Publication.

#### Reference Books:

1. Deitel and Deitel, C++ How to Program, Third Edition, Pearson Publication.
2. Joyce Farrell, Object-oriented programming using C++, Fourth Edition, Cengage Learning.

### Course Title 3: Microprocessor

Full Marks: 60 + 20 + 20

Code: CSC162

Pass Marks: 24 + 8 + 8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: II

Course Description:  This course contains of fundamental concepts of computer organization, basic I/O interfaces and Interrupts operations.

Course Objectives:  The course objective is to introduce the operation, programming and application of microprocessor.

Course Contents:

#### Unit 1: Introduction (4 Hrs.)

Introduction to Microprocessor, Components of a Microprocessor: Registers, ALU and control & timing, System bus (data, address and control bus), Microprocessor systems with bus organization

#### Unit 2: Basic Architecture (7 Hrs.)

Microprocessor Architecture and Operations, Memory, I/O devices, Memory and I/O operations, 8085 Microprocessor Architecture, Address, Data And Control Buses, 8085 Pin Functions,

Demultiplexing of Buses, Generation Of Control Signals

#### Unit 3: Instruction Cycle (3 Hrs.)

Fetch Operation and Timing Diagram; Execute Operation and Timing Diagram, Instruction Cycle, Machine Cycle, T-States, T-States, Memory Interfacing

#### Unit 4: Assembly Language Programming (10 Hrs.)

Assembly instruction format, Instruction Types, Mnemonics, Operands, Macro assemblers, Linking, Assembler directives, Addressing Modes, Simple sequence programs, Flags, Branch, Jumps, While-Do, Repeat-Until, If-Then-Else and Multiple If-then Programs, Debugging

#### Unit 6: Input/ Output Interfaces (6 Hrs.)

Interfacing Concepts, Ports, Interfacing Of I/O Devices, Interrupts In 8085, Programmable Interrupt Controller 8259A, Programmable Peripheral Interface 8255A

#### Unit 7: Advanced Microprocessors (9 Hrs.)

8086: logical block diagram and segments, 80286: Architecture, Registers, (Real/Protected mode), Privilege levels, descriptor cache, Memory access in GDT and LDT, multitasking, addressing modes, flag register 80386: Architecture, Register organization, Memory access in protected mode, Paging

#### Laboratory Works:

The laboratory work includes Assembly language programming using 8085/8086/8088 trainer kit. The programming should include: Arithmetic operation, base conversion, conditional branching etc. The lab work list may include following concepts:

1. Assembly language program using 8085 microprocessor kit.
2. Use of all types of instructions and addressing modes.
3. Arrays and the concept of Multiplications and Division operations on Microprocessor.
4. Assembly language programming, using any types of Assembler, including the different functions of Int 10h, and 12h

Text Books:

1.Ramesh S.Gaonkar, Microprocessor Architecture, Programming, and Applications with 8085, Prentice Hall

#### Reference Books:

1. A.P.Malvino and J.A.Brown, Digital Computer Electronics, 3rd Edition, Tata McGraw
2. Hill D.V.Hall, Microprocessors and Interfacing – Programming and Hardware, McGraw Hill
3. 8000 to 8085 Introduction to 8085 Microprocessor for Engineers and Scientists, A.K.Gosh, Prentice Hall

### Course Title 4: Mathematics II

Full Marks: 80 + 20

Code: MTH163

Pass Marks: 32 + 8

Nature of the Course: Theory

Credit Hrs: 3

Semester: II

Course Description: The course contains concepts and techniques of linear algebra. The course topics include systems of linear equations, determinants, vectors and vector spaces, eigen values and eigenvectors, and singular value decomposition of a matrix.

Course Objectives: The main objective of the course is to make familiarize with the concepts and techniques of linear algebra, solve system of linear equation with Gauss-Jordon method, to impart knowledge of vector space and subspace, eigenvalues and eigenvectors of a matrix and get the idea of diagonalization of a matrix, linear programming, Group, Ring, and Field.

Course Contents:

#### Unit 1: Linear Equations in Linear Algebra (5 Hrs.)

System of linear equations, Row reduction and Echelon forms, Vector equations, The matrix equations Ax = b, Applications of linear system, Linear independence

#### Unit 2:Transformation (4 Hrs.)

Introduction to linear transformations, the matrix of a linear Transformation, Linear models in business, science, and engineering

#### Unit 3: Matrix Algebra (5 Hrs)

Matrix operations, The inverse of a matrix, Characterizations of invertible matrices, Partitioned matrices, Matrix factorization, The Leontief input output model, Subspace of Rn, Dimension and rank

#### Unit 4: Determinants (4 Hrs.)

Introduction, Properties, Cramer’s rule, Volume and linear transformations

#### Unit 5: Vector Spaces (5 Hrs.)

Vector spaces and subspaces, Null spaces, Column spaces, and Linear transformations, Linearly independent sets: Bases, Coordinate systems

#### Unit 6: Vector Space Continued (4 Hrs.)

Dimension of vector space and Rank, Change of basis, Applications to difference equations, Applications to Markov Chains

#### Unit 7: Eigenvalues and Eigen Vectors (5 Hrs.)

Eigenvectors and Eigenvalues, The characteristic equations, Diagonalization, Eigenvectors and linear transformations, Complex eigenvalues, Discrete dynamical systems, Applications to differential equations

#### Unit 8: Orthogonality and Least Squares (5 Hrs.)

Inner product, Length, and orthoganility, Orthogonal sets, Orthogonal projections, The GramSchmidt process, Least squares problems, Application to linear models, Inner product spaces, Applications of inner product spaces

#### Unit 9: Groups and Subgroups (5 Hrs.)

Binary Operations, Groups, Subgroups, Cyclic Groups

#### Unit 10: Rings and Fields (4 Hrs.)

Rings and Fields, Integral domains

Text Books:

1. Linear Algebra and Its Applications, David C. Lay, 4th Edition, Pearson Addison Wesley.
2. Linear Algebra and Its Applications, Gilbert Strang, 4th Edition, Addison, CENGAGE Learning.

### Course Title 5 :Statistics I

Full Marks: 60 + 20 + 20

Code: STA164

Pass Marks: 24 + 8 + 8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: II

Course Description: This course contains basics of statistics, descriptive statistics, probability, sampling, random variables and mathematical expectations, probability distribution, correlation and regression.

Course Objectives: The main objective of this course is to impart the knowledge of descriptive statistics, correlation, regression, sampling, theoretical as well as applied knowledge of probability and some probability distributions.

Course Contents:

#### Unit 1: Introduction (4 Hrs.)

Basic concept of statistics; Application of Statistics in the field of Computer Science &          Information technology; Scales of measurement; Variables; Types of Data; Notion of a statistical population

#### Unit 2: Descriptive Statistics (6 Hrs.)

Measures of central tendency; Measures of dispersion; Measures of skewness; Measures of kurtosis; Moments; Steam and leaf display; five number summary; box plot

Problems and illustrative examples related to computer Science and IT

#### Unit 3:  Introduction to Probability (8 Hrs.)

Concepts of probability; Definitions of probability; Laws of probability; Bayes theorem; prior and posterior probabilities

Problems and illustrative examples related to computer Science and IT

#### Unit 4:   Sampling (3 Hrs.)

Definitions of population; sample survey vs. census survey; sampling error and non sampling error; Types of sampling

#### 5. Random Variables and Mathematical Expectation (5 Hrs.)

Concept of a random variable; Types of random variables; Probability distribution of a random variable; Mathematical expectation of a random variable; Addition and multiplicative theorems of expectation

Problems and illustrative examples related to computer Science and IT

#### Unit 6:  Probability Distributions (12 Hrs.)

Probability distribution function, Joint probability distribution of two random variables; Discrete distributions: Bernoulli trial, Binomial and Poisson distributions; Continuous distribution: Normal distributions; Standardization of normal distribution; Normal distribution as an approximation of Binomial and Poisson distribution; Exponential, Gamma distribution

Problems and illustrative examples related to computer Science and IT

#### Unit 7: Correlation and Linear Regression (7 Hrs.)

Bivariate data; Bivariate frequency distribution; Correlation between two variables; Karl Pearson’s coefficient of correlation(r); Spearman’s rank correlation; Regression Analysis: Fitting of lines of regression by the least squares method; coefficient of determination

Problems and illustrative examples related to computer Science and IT

#### Laboratory Works:

The laboratory work includes using any statistical software such as Microsoft Excel, SPSS, STATA etc. whichever convenient using Practical problems to be covered in the Computerized Statistics laboratory

#### Practical problems

Text Books:

1. Michael Baron (2013).  Probability and Statistics for Computer Scientists.  2nd Ed., CRC Press, Taylor & Francis Group, A Chapman & Hall Book.
2. Ronald E. Walpole, Raymond H. Myers, Sharon L. Myers, & Keying Ye (2012).
3. Probability & Statistics for Engineers & Scientists. 9th  Ed.,  Printice Hall.

#### Reference Books:

1. Douglas C. Montgomery & George C. Ranger (2003). Applied Statistics and Probability for Engineers. 3rd Ed., John Willey and Sons, Inc.
2. Richard A. Johnson (2001).  Probability and Statistics for Engineers. 6th Ed., Pearson Education, India