0% found this document useful (0 votes)
61 views68 pages

CBCS Syllabus Com SC

This document outlines the syllabus and scheme for a B.Sc. Honours and General degree in Computer Science from the University of Kalyani. It details the course structure over six semesters, including core and elective courses in computer science, along with credit values and examination schemes. The degree requires completion of 26 courses totaling 140 credits over the six semesters.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views68 pages

CBCS Syllabus Com SC

This document outlines the syllabus and scheme for a B.Sc. Honours and General degree in Computer Science from the University of Kalyani. It details the course structure over six semesters, including core and elective courses in computer science, along with credit values and examination schemes. The degree requires completion of 26 courses totaling 140 credits over the six semesters.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 68

Syllabus and scheme

for B.Sc. Honours


and General in
Computer Science

University of Kalyani
West Bengal
Syllabus and scheme
of

Examination for B.Sc.


Honours

in
Computer Science
University of Kalyani
Three-year Semester-wise B.Sc. (Honours) Courses of Studies in
Computer Science effective from the Academic Session 2018-2019
Computer Science Honours Course

Course Structure

SEMESTER-I
Course Code Course Title Course wise Credit
Class
UG-H-CC-L-101 Computer Fundamentals and Programming using C Core Theory 4
UG-H-CC-P-101 Programming using C Core Practical 2
UG-H-CC-L-102 Digital System Design Core Theory 4
UG-H-CC-P-102 Digital System Design Lab Core Practical 2
GE-1 General Elective 6
AECC-101 Environmental Science / English/MIL AECC 2
communication
Total 4 courses Total 20
SEMESTER-II
Course Code Course Title Course Nature Credit
UG-H-CC-L-203 Programming in C++ Core Theory 4
UG-H-CC-P-203 Programming in C++ Lab Core Practical 2
UG-H-CC-L-204 Computer System Architecture Core Theory 5
UG-H-CC-T-204 Computer System Architecture Tutorial Core Tutorial 1
GE-2 General Elective 6
AECC-202 Environmental Science / English/MIL AECC 2
communication
Total 4 courses Total 20
SEMESTER-III
Course Code Course Title Course Nature Credit
UG-H-CC-L-305 Data Structures Core Theory 4
UG-H-CC-P-305 Data Structures Lab Core Practical 2
UG-H-CC-L-306 Design and Analysis of Algorithms Core Theory 4
UG-H-CC-P-306 Design and Analysis of Algorithms Lab Core Practical 2
UG-H-CC-L-307 Discrete Structures Core Theory 5
UG-H-CC-T-307 Discrete Structures Tutorial Core Tutorial 1
GE-3 General Elective 6
UG-H-SEC-L-301 UNIX/LINUX Programming SEC 2
Total 5 courses Total 26
SEMESTER-IV
Course Code Course Title Course Nature Credit
UG-H-CC-L-408 Operating System Core Theory 5
UG-H-CC-T-408 Operating System Tutorial Core Tutorial 1
UG-H-CC-L-409 Computer Networks Core Theory 5
UG-H-CC-T-409 Computer Networks Tutorial Core Tutorial 1
UG-H-CC-L-410 Database Management Systems Core Theory 4
UG-H-CC-P-410 Data Management Systems Lab Core Practical 2
GE-4 General Elective 6
UG-H-SEC-L-402 Programming with MATLAB SEC 2
Total 5 courses Total 26
SEMESTER-V
Course Code Course Title Course Nature Credit
UG-H-CC-L-511 Theory of Computation Core Theory 5
UG-H-CC-T-511 Theory of Computation Tutorial Core Tutorial 1
UG-H-CC-L-512 Internet Technologies Core Theory 4
UG-H-CC-P-512 Internet Technologies Lab Core Practical 2
UG-H-DSE-L-501 Microprocessor/ Digital Image Processing DSE Theory 4
UG-H-DSE-P-501 Microprocessor/ Digital Image Processing Lab DSE Practical 2
UG-H-DSE-L-502 Numerical Methods/ Machine Learning DSE Theory 4
UG-H-DSE-P-502 Numerical Methods/ Machine Learning Lab DSE Practical 2
Total 4 courses Total 24
SEMESTER-VI
Course Code Course Title Course Nature Credit
UG-H-CC-L-613 Software Engineering Core Theory 5
UG-H-CC-T-613 Software Engineering Tutorial Core Tutorial 1
UG-H-CC-L-614 Computer Graphics Core Theory 4
UG-H-CC-P-614 Computer Graphics Lab Core Practical 2
UG-H-DSE-L-603 System Programming/Introduction to Data Science DSE Theory 4
System Programming/Introduction to Data Science DSE Practical 2
UG-H-DSE-P-603
Lab
UG-H-DSE-PRO-604 Project Work/Dissertation DSE 6
Total 4 courses Total 24
Total (All semesters) 26 courses Total 140

NOTE: The following General Elective Courses cannot be taken by students in B.Sc. (Hons.) in
Computer Science.
General Elective Course Course Name Course Code Credit
(Theory and Lab/Tutorial)
GE-1 Computer Fundamentals and UG-H-GE-L-101 4
Programming using C
Computer Fundamentals and UG-H-GE-P-101 2
Programming using C Lab
GE-2 Computer System UG-H-GE-L-202 5
Architecture
Computer System UG-H-GE-T-202 1
Architecture Tutorial
GE-3 Analysis of Algorithms and UG-H-GE-L-303 4
Data Structures
Analysis of Algorithms and UG-H-GE-P-303 2
Data Structures Lab
GE-4 Operating System UG-H-GE-L-404 5
Operating System Tutorial UG-H-GE-T-404 1

No. of classes per week:


L T P
Core Course 4 1 4
Discipline Specific Elective 4 1 4
General Elective 4 1 4
Skill Enhancement Course 1 1 2
Ability Enhancement Compulsory 1 1 0
Course
L: Theory; T: Tutorial; P: Practical/Lab

Note:
(1) At least 60 periods of classes must be taken for subjects with credits 4 or 5.

(2) Wherever there is a practical there will be no tutorial and vice-versa.

(3) The size of the practical group for practical papers is recommended to be 10-15 students.
(4) The size of tutorial group for papers without practical is recommended to be 8-10 students.

Internal Assesment End Semester Exam


Theoretical Paper 20 80
Practical Paper 20 80
 In Tutorial no end semester examination will be conducted by the university. In Tutorial at least two class
tests must be conducted for each Tutorial by the respective colleges and at the end of the semester an
assigment copy for each Tutorial must be submitted by each student.

Marks distribution in question papers of theoretical subjects with credit 4 or 5:


Total Marks = 80

Group A: Answer any 10 questions (2 X 10 = 20)


Q. No. 1. (i) to (xiv)

Group B: Answer any 3 questions (5 X 3 = 15)


Q. No. 2. to 6.

Group C: Answer any 3 questions (15 X 3 = 45)


Q. No. 7. to 11.

Marks distribution in question papers of practical subjects with credit 2:


Total Marks = 80

Experiment(s) : 70
Viva : 10
Detailed Syllabus Semesterwise
Semester-I
Environmental Science/English/MIL Communication (AECC-101) Credit-2

TBA

Computer Fundamentals and Programming using C (UG-H-CC-L-101) Credit-4

Introduction to Computer and Problem Solving: Information and Data.


Hardware: CPU, Primary and Secondary storage, I/O devices
Software: Systems and Application.
3L

Generation of Computers: Super, Mainframe, Mini and Personal Computer.


Introduction to Programming Languages: Machine Language, Assembly Language, High Level Language.
Problem Solving: Flow Charts, Decision Tables and Pseudo codes.
6L

Number Systems and Codes:


Number representation: Weighted Codes, Non-weighted codes, Positional, Binary, Octal, Hexadecimal,
Binary Coded Decimal (BCD), Conversion of bases. Complement notions. Binary Arithmetic, Binary Codes:
Gray, Alphanumeric, ASCII, EBCDIC; Parity Bits. Single Error-Detecting and Correcting Codes, Hamming
Codes, Fixed and Floating Point Arithmetic: Addition, Subtraction, Multiplication and Division.
12L

Boolean Algebra:
Fundamentals of Boolean Algebra, Switches and Inverters, Functionally Complete Gates (AND, OR, NOT),
NAND, NOR. Switching function and Boolean function. De Morgan’s theorem, Minterm and Maxterm,
Truth table and minimization of switching function up to four variables, Algebraic and K-map method of
logic circuit synthesis: Two level and Multi level.
6L
C Language preliminaries:
C character set, Identifiers and keywords, Data types, Declarations, Expressions, statements and
symbolic constants.
3L
Input-Output:
getchar, putchar, scanf, printf, gets, puts, functions.
1L

Pre-processor commands:
#include, #define, #ifdef
1L

Operators and expressions:


Arithmetic, unary, logical, bit-wise, assignment and conditional operators
2L

Storage types:
Automatic, external, register and static variables.
2L
Functions:
Defining and accessing, passing arguments, Function prototypes, Recursion, Library functions,
Static functions
4L

Arrays:
Defining and processing, Passing arrays to a function, Multi dimensional arrays. 11. Strings: 6 Hrs
Defining and operations on strings.
4L

Pointers:
Declarations, Passing pointers to a function, Operations on pointers, Pointer Arithmetic, Pointers
and arrays, Arrays of pointers function pointers.
4L

Structures:
Defining and processing, Passing to a function, Unions, typedef, array of structure, and pointer to
structure
4L
File structures:
Definitions, concept of record, file operations: Storing, creating, retrieving, updating Sequential,
relative, indexed and random access mode, Files with binary mode(Low level), performance of
Sequential Files, Direct mapping techniques: Absolute, relative and indexed sequential files (ISAM)
concept of index, levels of index, overflow of handling.
6L
File Handling: File operation: creation, copy, delete, update, text file, binary file.
2L

Recommended Books:
1. P. K. Sinha & Priti Sinha , “Computer Fundamentals”, BPB Publications, 2007.
2. Dr. Anita Goel, Computer Fundamentals, Pearson Education, 2010.
3. Kernighan, Brian W., and Dennis M. Ritchie.The C programming language. 2006.
4. Schildt, Herbert, and C. Turbo. "C: the complete reference, Osborne." (2000).
5. Balagurusamy, E. programming in ANSI C. Tata McGraw-Hill Education, 2002.
6. Kanetkar, Yashavant P. Let us C. BPB publications, 2016.

Programming using C Lab (UG-H-CC-P-101) Credit-2


Programs on the following topics:

Introduction: History, Basic Structure, Algorithms, Structured programming constructs.

C Programming elements: Character sets, Keywords, Constants, Variables, Data Types, Operators-
Arithmetic, Relational, Logical and Assignment; Increment and Decrement and Conditional, Operator
Precedence and Associations; Expressions, type casting. Comments, Functions, Storage Classes, Bit
manipulation, Input and output.

C Preprocessor: File inclusion, Macro substitution.


Statements: Assignment, Control statements- if, if_else, switch, break, continue, goto, Loops-while, do-
while, for.
Functions: argument passing, return statement, return values and their types, recursion

Arrays: String handling with arrays, String handling functions.

Pointers: Definition and initialization, Pointer arithmetic, Pointers and arrays, String functions and
manipulation, Dynamic storage allocation.

User defined Data types: Enumerated data types, Structures. Structure arrays, Pointers to Functions and
Structures, Unions.

File Access: Opening, Closing, I/O operations.

Digital System Design (UG-H-CC-L-102) Credit-4

Combinational Circuits: Realization of AND and OR Gates using diodes and NOT Gate using transistors,
Standard Gate Assemblies, IC chips packaging nomenclature, Half and Full Adder(3 bits), Multi-bit adders –
Ripple carry and Carry Look Ahead Adder, Adder/subtractor, BCD-Adder, Data selectors/multiplexers –
expansions, reductions, function realization, universal function realization, multi-function realization,
Decoders/Demultiplexers: function realization, De-multiplexer and function realization, Encoder, Priority
Encoder, Parity bit Generator/checker, Gray Code Generator, Code Converters, I/O features of BCD to 7-
segment LED decoder/driver(7447/7448), Seven segment display unit, Comparators.
25L

Sequential Circuits: Model of Sequential computing, Difference between Combinational and Sequential
circuit, RS-Latch: using NAND and NOR Gates, RS Latch as a Static RAM Cell, Problems of Basic Latch
circuits, Digital Clock – Duty Cycle, Rising time, Falling time, Clocked Flip Flops - SR, JK, D, T, Level
Trigger and Edge Trigger, Excitation Functions of each flip-flops, Flip-flops with Preset and Clear,
Application of Flip-flops: Asynchronous Counter (UP/DOWN) up to 4 bit counter, Mod – n Counter,
Synchronous Counters – different mod counters, Ring counter, Registers: Registers with serial and parallel
load, Shift Registers.
25L

Data Converter: D/A Conversion principle using basic circuit, R-2R Ladder circuit, Counter based A/D
converter, Successive approximation method for A/D conversion.
DTL and TTL NAND gate circuits and its operations, Fan in & Fan out, Noise margin, SSI, MSI, LSI, and
VLSI classifications.
10L

Recommended Books:
(1) Digital Circuits, Combinational Circuit, Vol. 1 by D. Roy Choudhuri, Platinam Publication.
(2) Digital Circuits, Sequential Circuit, Vol. 2 by D. Roy Choudhuri, Platinam Publication.
(3) Digital Logic and Computer Design by M.Morris Mano, PHI
(4) Digital Principle and Applications by Malvino & Leach, TMH
(5) Digital Systems Principles and Applications by Ronal J. Tocci and Neal S. Widmer, PHI
(6) Digital Fundamentals by Floyd, Pearson Education

Digital System Design Lab (UG-H-CC-P-102) Credit-2

Combinational Circuits:
1) Implement Half Adder/Half Subtractor / Full Adder / Full Subtractor using Logic Gates. Realize a logic
function using basic/universal gates in SOP and POS form. Study the functionalities of 7483 and design a
BCD adder using 7483 or equivalent.

2) Design a 4 bit 2’s complement adder – subtractor unit using 7483 or equivalent and XOR gates.

3) Design a circuit to convert BCD numbers to corresponding gray codes.

4) Design a 4:1 MUX using NAND gates. Study of 74153 and 74151. Design Full Adder / Subtractor using
MUX.

5) Design a 2:4 decoder using NAND gates. Study of 74155 and 74138. Design Full Adder / Subtractor using
decoders.

6) Design a parity generator/checker using basic gates.

7) Design magnitude comparator using basic/universal gates. Study of 7485.

8) Design a seven segment display unit.

Sequential Circuits:
1) Realize S-R, D, J-K and T flip-flop using basic gates. (Study the undefined state in S-R flip-flop).

2) Study the functional characteristic of IC 74194 with emphasis on timing diagram.

3) Design Asynchronous and Synchronous counters. (Mod-8, Mod-10 up counter)

4) Study the functional characteristics of RAM IC chip. Study of open collector and tri-state output.
Horizontal expansion of RAM chips by cascading. (Use 74189, 7489, or any available chip).

Computer Fundamentals and Programming using C (GE-1): (UG-H-GE-L-101) Credit-4

Introduction to Computer and Problem Solving: Information and Data.


Hardware: CPU, Primary and Secondary storage, I/O devices
Software: Systems and Application.
3L

Generation of Computers: Super, Mainframe, Mini and Personal Computer.


Introduction to Programming Languages: Machine Language, Assembly Language, High Level Language.
Problem Solving: Flow Charts, Decision Tables and Pseudo codes.
6L

Number Systems and Codes:


Number representation: Weighted Codes, Non-weighted codes, Positional, Binary, Octal, Hexadecimal,
Binary Coded Decimal (BCD), Conversion of bases. Complement notions. Binary Arithmetic, Binary Codes:
Gray, Alphanumeric, ASCII, EBCDIC; Parity Bits. Single Error-Detecting and Correcting Codes, Hamming
Codes, Fixed and Floating Point Arithmetic: Addition, Subtraction, Multiplication and Division.
12L

Boolean Algebra:
Fundamentals of Boolean Algebra, Switches and Inverters, Functionally Complete Gates (AND, OR, NOT),
NAND, NOR. Switching function and Boolean function. De Morgan’s theorem, Minterm and Maxterm,
Truth table and minimization of switching function up to four variables, Algebraic and K-map method of
logic circuit synthesis: Two level and Multi level.
6L
C Language preliminaries:
C character set, Identifiers and keywords, Data types, Declarations, Expressions, statements and
symbolic constants.
3L
Input-Output:
getchar, putchar, scanf, printf, gets, puts, functions.
1L

Pre-processor commands:
#include, #define, #ifdef
1L

Operators and expressions:


Arithmetic, unary, logical, bit-wise, assignment and conditional operators
2L

Storage types:
Automatic, external, register and static variables.
2L

Functions:
Defining and accessing, passing arguments, Function prototypes, Recursion, Library functions,
Static functions
4L

Arrays:
Defining and processing, Passing arrays to a function, Multi dimensional arrays. 11. Strings: 6 Hrs
Defining and operations on strings.
4L

Pointers:
Declarations, Passing pointers to a function, Operations on pointers, Pointer Arithmetic, Pointers
and arrays, Arrays of pointers function pointers.
4L

Structures:
Defining and processing, Passing to a function, Unions, typedef, array of structure, and pointer to
structure
4L
File structures:
Definitions, concept of record, file operations: Storing, creating, retrieving, updating Sequential,
relative, indexed and random access mode, Files with binary mode(Low level), performance of
Sequential Files, Direct mapping techniques: Absolute, relative and indexed sequential files (ISAM)
concept of index, levels of index, overflow of handling.
6L
File Handling: File operation: creation, copy, delete, update, text file, binary file.
2L
Recommended Books:
1. P. K. Sinha & Priti Sinha , “Computer Fundamentals”, BPB Publications, 2007.
2. Dr. Anita Goel, Computer Fundamentals, Pearson Education, 2010.
3. Kernighan, Brian W., and Dennis M. Ritchie.The C programming language. 2006.
4. Schildt, Herbert, and C. Turbo. "C: the complete reference, Osborne." (2000).
5. Balagurusamy, E. programming in ANSI C. Tata McGraw-Hill Education, 2002.
6. Kanetkar, Yashavant P. Let us C. BPB publications, 2016.

Programming using C Lab (GE-1): (UG-H-GE-P- Credit-2


101)
Programs on the following topics:

Introduction: History, Basic Structure, Algorithms, Structured programming constructs.

C Programming elements: Character sets, Keywords, Constants, Variables, Data Types, Operators-
Arithmetic, Relational, Logical and Assignment; Increment and Decrement and Conditional, Operator
Precedence and Associations; Expressions, type casting. Comments, Functions, Storage Classes, Bit
manipulation, Input and output.

C Preprocessor: File inclusion, Macro substitution.


Statements: Assignment, Control statements- if, if_else, switch, break, continue, goto, Loops-while, do-
while, for.

Functions: argument passing, return statement, return values and their types, recursion

Arrays: String handling with arrays, String handling functions.

Pointers: Definition and initialization, Pointer arithmetic, Pointers and arrays, String functions and
manipulation, Dynamic storage allocation.

User defined Data types: Enumerated data types, Structures. Structure arrays, Pointers to Functions and
Structures, Unions.

File Access: Opening, Closing, I/O operations.

Semester -II
English/MIL communication (AECC-202) Credit-2

TBA

Programming in C++ (UG-H-CC-L-203) Credit-4

1. Introduction to C and C++


History of C and C++, Overview of Procedural Programming and Object-Orientation Programming,
Using main() function, Compiling and Executing Simple Programs in C++.
3L

2. Data Types, Variables, Constants, Operators and Basic I/O


Declaring, Defining and Initializing Variables, Scope of Variables, Using Named Constants,
Keywords, Data Types, Casting of Data Types, Operators (Arithmetic, Logical and Bitwise), Using
Comments in programs, Character I/O (getc, getchar, putc, putcharetc), Formatted and Console I/O
(printf(), scanf(), cin, cout), Using Basic Header Files (stdio.h, iostream.h, conio.hetc).
5L

3. Expressions, Conditional Statements and Iterative Statements


Simple Expressions in C++ (including Unary Operator Expressions, Binary Operator Expressions),
Understanding Operators Precedence in Expressions, Conditional Statements (if construct, switch-
case construct), Understanding syntax and utility of Iterative Statements (while, do-while, and for
loops), Use of break and continue in Loops, Using Nested Statements (Conditional as well as
Iterative)
10L

4. Functions and Arrays


Utility of functions, Call by Value, Call by Reference, Functions returning value, Void functions,
Inline Functions, Return data type of functions, Functions parameters, Differentiating between
Declaration and Definition of Functions, Command Line Arguments/Parameters in Functions,
Functions with variable number of Arguments. Creating and Using One Dimensional Arrays
( Declaring and Defining an Array, Initializing an Array, Accessing individual elements in an Array,
Manipulating array elements using loops), Use Various types of arrays (integer, float and character
arrays / Strings) Twodimensional Arrays (Declaring, Defining and Initializing Two Dimensional
Array, Working with Rows and Columns), Introduction to Multi-dimensional arrays
8L

5. Derived Data Types (Structures and Unions)


Understanding utility of structures and unions, Declaring, initializing and using simple structures
and unions, Manipulating individual members of structures and unions, Array of Structures,
Individual data members as structures, Passing and returning structures from functions, Structure
with union as members, Union with structures as members. 6. Pointers and References in C++ (7
Lectures) Understanding a Pointer Variable, Simple use of Pointers (Declaring and Dereferencing
Pointers to simple variables), Pointers to Pointers, Pointers to structures, Problems with Pointers,
Passing pointers as function arguments, Returning a pointer from a function, using arrays as
pointers, Passing arrays to functions. Pointers vs. References, Declaring and initializing references,
Using references as function arguments and function return values
12L

7. Memory Allocation in C++


Differentiating between static and dynamic memory allocation, use of malloc, calloc and free
functions, use of new and delete operators, storage of variables in static and dynamic memory
allocation
4L

8. File I/O, Preprocessor Directives


Opening and closing a file (use of fstream header file, ifstream, ofstream and fstream classes),
Reading and writing Text Files, Using put(), get(), read() and write() functions, Random access in
files, Understanding the Preprocessor Directives (#include, #define, #error, #if, #else, #elif, #endif,
#ifdef, #ifndef and #undef), Macros
6L

9. Using Classes in C++


Principles of Object-Oriented Programming, Defining & Using Classes, Class Constructors,
Constructor Overloading, Function overloading in classes, Class Variables &Functions, Objects as
parameters, Specifying the Protected and Private Access, Copy Constructors,Overview of Template
classes and their use.
4L

10. Overview of Function Overloading and Operator Overloading


Need of Overloading functions and operators, Overloading functions by number and type of
arguments, Looking at an operator as a function call, Overloading Operators (including assignment
operators, unary operators)
4L

11. Inheritance, Polymorphism and Exception Handling


Introduction to Inheritance (Multi-Level Inheritance, Multiple Inheritance), Polymorphism (Virtual
Functions, Pure Virtual Functions), Basics Exceptional Handling (using catch and throw, multiple
catch statements), Catching all exceptions, Restricting exceptions, Rethrowing exceptions.
4L

Recommended Books:
1. HerbtzSchildt, "C++: The Complete Reference", Fourth Edition, McGraw Hill.2003
2. BjarneStroustrup, "The C++ Programming Language", 4th Edition, Addison-Wesley , 2013.
3. BjarneStroustroup, "Programming -- Principles and Practice using C++", 2nd Edition, Addison-
Wesley 2014.
4. E Balaguruswamy, "Object Oriented Programming with C++", Tata McGraw-Hill Education,
2008.
5. Paul Deitel, Harvey Deitel, "C++ How to Program", 8th Edition, Prentice Hall, 2011.
5. John R. Hubbard, "Programming with C++", Schaum's Series, 2nd Edition, 2000.
6. Andrew Koeni, Barbara, E. Moo, "Accelerated C++", Published by Addison-Wesley , 2000.
7. Scott Meyers, "Effective C++", 3rd Edition, Published by Addison-Wesley, 2005.
8. Harry, H. Chaudhary, "Head First C++ Programming: The Definitive Beginner's Guide", First
Create space Inc, O-D Publishing, LLC USA.2014
9. Walter Savitch, "Problem Solving with C++", Pearson Education, 2007.
10. Stanley B. Lippman, JoseeLajoie, Barbara E. Moo, "C++ Primer", Published by AddisonWesley,
5th Edition, 2012

Programming in C++ Lab (UG-H-CC-P-203) Credit-2

1. WAP to print the sum and product of digits of an integer.


2. WAP to reverse a number.
3. WAP to compute the sum of the first n terms of the following series S = 1+1/2+1/3+1/4+……
4. WAP to compute the sum of the first n terms of the following series S =1-2+3-4+5…………….
5. Write a function that checks whether a given string is Palindrome or not. Use this function to find
whether the string entered by user is Palindrome or not.
6. Write a function to find whether a given no. is prime or not. Use the same to generate the prime
numbers less than 100.
7.WAP to compute the factors of a given number.
8. Write a macro that swaps two numbers. WAP to use it.
9. WAP to print a triangle of stars as follows (take number of lines from user):
*
***
*****
*******
*********

10. WAP to perform following actions on an array entered by the user: i) Print the even-valued
elements ii) Print the odd-valued elements iii) Calculate and print the sum and average of the
elements of array iv) Print the maximum and minimum element of array v) Remove the duplicates
from the array vi) Print the array in reverse order The program should present a menu to the user
and ask for one of the options. The menu should also include options to re-enter array and to quit
the program.
11. WAP that prints a table indicating the number of occurrences of each alphabet in the text entered
as command line arguments.
12. Write a program that swaps two numbers using pointers.
13. Write a program in which a function is passed address of two variables and then alter its
contents.
14. Write a program which takes the radius of a circle as input from the user, passes it to another
function that computes the area and the circumference of the circle and displays the value of area
and circumference from the main() function.
15. Write a program to find sum of n elements entered by the user. To write this program, allocate
memory dynamically using malloc() / calloc() functions or new operator.
16. Write a menu driven program to perform following operations on strings:
a) Show address of each character in string
b) Concatenate two strings without using strcat function.
c) Concatenate two strings using strcat function.
d) Compare two strings
e) Calculate length of the string (use pointers)
f) Convert all lowercase characters to uppercase
g) Convert all uppercase characters to lowercase
h) Calculate number of vowels
i) Reverse the string
17. Given two ordered arrays of integers, write a program to merge the two-arrays to get an ordered
array.
18. WAP to display Fibonacci series (i)using recursion, (ii) using iteration
19. WAP to calculate Factorial of a number (i)using recursion, (ii) using iteration
20. WAP to calculate GCD of two numbers (i) with recursion (ii) without recursion.
21. Create Matrix class using templates. Write a menu-driven program to perform following Matrix
operations (2-D array implementation): a) Sum b) Difference c) Product d) Transpose
22. Create the Person class. Create some objects of this class (by taking information from the user).
Inherit the class Person to create two classes Teacher and Student class. Maintain the respective
information in the classes and create, display and delete objects of these two classes (Use Runtime
Polymorphism).
23. Create a class Triangle. Include overloaded functions for calculating area. Overload assignment
operator and equality operator.
24. Create a class Box containing length, breath and height. Include following methods in it: a)
Calculate surface Area b) Calculate Volume c) Increment, Overload ++ operator (both prefix &
postfix) d) Decrement, Overload -- operator (both prefix & postfix) e) Overload operator == (to
check equality of two boxes), as a friend function f) Overload Assignment operator g) Check if it is
a Cube or cuboid Write a program which takes input from the user for length, breath and height to
test the above class.
25. Create a structure Student containing fields for Roll No., Name, Class, Year and Total Marks.
Create 10 students and store them in a file.
26. Write a program to retrieve the student information from file created in previous question and
print it in following format: Roll No. Name Marks
27. Copy the contents of one text file to another file, after removing all whitespaces.
28. Write a function that reverses the elements of an array in place. The function must accept only
one pointer value and return void.

Computer System Architecture (UG-H-CC-L-204) Credit-5

1. Introduction
Logic gates, boolean algebra, combinational circuits, circuit simplification, flip-flops and sequential
circuits, decoders, multiplexers, registers, counters and memory units.
9L

2. Data Representation and Basic Computer Arithmetic


Number systems, complements, fixed and floating point representation, character representation,
addition, subtraction, magnitude comparison, multiplication and division algorithms for integers
12L

3. Basic Computer Organization and Design


Computer registers, bus system, instruction set, timing and control, instruction cycle, memory
reference, input-output and interrupt, Interconnection Structures, Bus Interconnection design of
basic computer.
10L

4. Central Processing Unit


Register organization, arithmetic and logical micro-operations, stack organization, micro
programmed control. Instruction formats, addressing modes, instruction codes, machine language,
assembly language, input output programming, RISC, CISC architectures, pipelining and parallel
architecture.
9L

5. Memory Organization
Cache memory, Associative memory, mapping.
10L

6. Input-Output Organization
Input / Output: External Devices, I/O Modules, Programmed I/O, Interrupt-Driven I/O, Direct
Memory Access, I/O Channels.
10L

Recommended Books:
1. M. Mano, Computer System Architecture, Pearson Education 1992
2. A. J. Dos Reis, Assembly Language and Computer Architecture using C++ and JAVA, Course
Technology, 2004
3. W. Stallings, Computer Organization and Architecture Designing for Performance, 8th Edition,
Prentice Hall of India,2009
4. M.M. Mano , Digital Design, Pearson Education Asia,2013
5. Carl Hamacher, Computer Organization, Fifth edition, McGrawHill, 2012.

Computer System Architecture Tutorial (UG-H-CC-T-204) Credit-1

Tutorials will be given based on the topics in UG-H-CC-L-204.

Computer System Architecture (GE-2) (UG-H- Credit-5


GE-L-202)

1. Introduction
Logic gates, boolean algebra, combinational circuits, circuit simplification, flip-flops and sequential
circuits, decoders, multiplexers, registers, counters and memory units.
9L
2. Data Representation and Basic Computer Arithmetic
Number systems, complements, fixed and floating point representation, character representation,
addition, subtraction, magnitude comparison, multiplication and division algorithms for integers
12L
3. Basic Computer Organization and Design
Computer registers, bus system, instruction set, timing and control, instruction cycle, memory
reference, input-output and interrupt, Interconnection Structures, Bus Interconnection design of
basic computer.
10L
4. Central Processing Unit
Register organization, arithmetic and logical micro-operations, stack organization, micro
programmed control. Instruction formats, addressing modes, instruction codes, machine language,
assembly language, input output programming, RISC, CISC architectures, pipelining and parallel
architecture.
9L
5. Memory Organization
Cache memory, Associative memory, mapping.
10L
6. Input-Output Organization
Input / Output: External Devices, I/O Modules, Programmed I/O, Interrupt-Driven I/O, Direct
Memory Access, I/O Channels.
10L

Recommended Books:
1. M. Mano, Computer System Architecture, Pearson Education 1992
2. A. J. Dos Reis, Assembly Language and Computer Architecture using C++ and JAVA, Course
Technology, 2004
3. W. Stallings, Computer Organization and Architecture Designing for Performance, 8th Edition,
Prentice Hall of India,2009
4. M.M. Mano , Digital Design, Pearson Education Asia,2013
5. Carl Hamacher, Computer Organization, Fifth edition, McGrawHill, 2012.

Computer System Architecture Tutorial (UG-H-GE-T-202) Credit-1


Tutorials will be given based on the topics covered in UG-H-GE-L-202.

Semester-III
Data Structures (UG-H-CC-L-305) Credit-4

1. Basic definitions; classsifications; ADT; Linear Data Structures - Sequential representations;


Non-linear data structures – representations.
2L
1. Arrays
Single and Multi-dimensional Arrays; Sparse Matrices (Array and Linked Representation); Row-
major and column-major order; different applications
4L
2. Stacks
Implementing single / multiple stack/s in an Array; Prefix, Infix and Postfix expressions, Utility and
conversion of these expressions from one to another; Evaluation of postfix exxpreesion using stack;
Applications of stack; Limitations of Array representation of stack
6L
3. Linked Lists
Singly, Doubly and Circular Lists (Array and Linked representation); Normal and Circular
representation of Stack in Lists; Self Organizing Lists; Skip Lists
10L
4. Queues
Array and Linked representation of Queue, De-queue, Priority Queues
6L
5. Recursion
Developing Recursive Definition of Simple Problems and their implementation; Advantages and
Limitations of Recursion; Understanding what goes behind Recursion (Internal Stack
Implementation); Tail Recursion; When not to use recursion; Removal of recursion.
4L
6. Trees and Graphs
Introduction to Tree as a data structure; Binary Trees (Insertion, Deletion , Recursive and Iterative
Traversals on Binary Search Trees); Different Properperties of Binary trees; Threaded Binary Trees
(Insertion, Deletion, Traversals); Height-Balanced Trees (Various operations on AVL Trees); B- tree,
B+ tree; Graphs - Representations, Breadth-first and Depth-first Search.
10L
7. Searching and Sorting
Linear Search, Binary Search, Comparison of Linear and Binary Search; Bubble Sort, Selection
Sort, Insertion Sort, Heap Sort, Merge Sort, Radix Sort, Bucket Sort, Shell Sort; Comparison of
Sorting Techniques
10L
8. Hashing
Introduction to Hashing, Deleting from Hash Table, Efficiency of Rehash Methods, Hash Table
Reordering, Resolving collision by Open Addressing, Coalesced Hashing, Separate Chaining,
Dynamic and Extendible Hashing, Choosing a Hash Function, Perfect Hashing Function
4L
9. File Structures
Sequential and Direct Access. Relative Files, Indexed Files - B+ tree as index. Multi-indexed Files,
Inverted Files, Hashed Files.
4L

Reference Books:
1. Adam Drozdek, "Data Structures and algorithm in C++", Third Edition, Cengage Learning, 2012.
2. SartajSahni, Data Structures, "Algorithms and applications in C++", Second Edition, Universities
Press, 2011.
3. Aaron M. Tenenbaum, Moshe J. Augenstein, YedidyahLangsam, "Data Structures Using C and
C++:, Second edition, PHI, 2009.
4. Robert L. Kruse, "Data Structures and Program Design in C++", Pearson,1999.
5. D.S Malik, Data Structure using C++,Second edition, Cengage Learning, 2010.
6. Mark Allen Weiss, "Data Structures and Algorithms Analysis in Java", Pearson Education, 3rd
edition, 2011
7. Aaron M. Tenenbaum, Moshe J. Augenstein, YedidyahLangsam, "Data Structures Using Java,
2003.
8. Robert Lafore, "Data Structures and Algorithms in Java, 2/E", Pearson/ Macmillan Computer
Pub,2003
9. John Hubbard, "Data Structures with JAVA", McGraw Hill Education (India) Private Limited; 2
edition, 2009
10. Goodrich, M. and Tamassia, R. "Data Structures and Algorithms Analysis in Java", 4th Edition,
Wiley,2013
11. Herbert Schildt, "Java The Complete Reference (English) 9th Edition Paperback", Tata McGraw
Hill, 2014.
12. D. S. Malik, P.S. Nair, "Data Structures Using Java", Course Technology, 2003.

Data Structures Lab (UG-H-CC-P-305) Credit-2

1. Write a program to search an element from a list. Give user the option to perform Linear or
Binary search. Use Template functions.
2. WAP using templates to sort a list of elements. Give user the option to perform sorting using
Insertion sort, Bubble sort or Selection sort.
3. Implement Linked List using templates. Include functions for insertion, deletion and search of a
number, reverse the list and concatenate two linked lists.
4. Implement Doubly Linked List using templates. Include functions for insertion, deletion and
search of a number, reverse the list.
5. Implement Circular Linked List using templates. Include functions for insertion, deletion and
search of a number, reverse the list.
6. Perform Stack operations using Linked List implementation.
7. Perform Stack operations using Array implementation. Use Templates.
8. Perform Queues operations using Circular Array implementation. Use Templates.
9. Create and perform different operations on Double-ended Queues using Linked List
implementation.
10. WAP to scan a polynomial using linked list and add two polynomial.
11. WAP to calculate factorial and to compute the factors of a given no. (i)using recursion, (ii) using
iteration
12. (ii) WAP to display fibonacci series (i)using recursion, (ii) using iteration
13. WAP to calculate GCD of 2 number (i) with recursion (ii) without recursion
14. WAP to create a Binary Search Tree and include following operations in tree: (a) Insertion
(Recursive and Iterative Implementation) (b) Deletion by copying (c) Deletion by Merging (d)
Search a no. in BST (e) Display its preorder, postorder and inorder traversals Recursively (f)
Display its preorder, postorder and inorder traversals Iteratively (g) Display its level-by-level
traversals (h) Count the non-leaf nodes and leaf nodes (i) Display height of tree (j) Create a mirror
image of tree (k) Check whether two BSTs are equal or not
15. WAP to convert the Sparse Matrix into non-zero form and vice-versa.
16. WAP to reverse the order of the elements in the stack using additional stack.
17. WAP to reverse the order of the elements in the stack using additional Queue.
18. WAP to implement Diagonal Matrix using one-dimensional array.
19. WAP to implement Lower Triangular Matrix using one-dimensional array.
20. WAP to implement Upper Triangular Matrix using one-dimensional array.
21. WAP to implement Symmetric Matrix using one-dimensional array.
22. WAP to create a Threaded Binary Tree as per inorder traversal, and implement operations like
finding the successor / predecessor of an element, insert an element, inorder traversal.
23. WAP to implement various operations on AVL Tree.

Design and Analysis of Algorithms (UG-H-CC-L-306) Credit-4

1. Introduction
Basic Design and Analysis techniques of Algorithms; Models of computation: RAM, TM etc.; time
and space complexity; Correctness of Algorithm.
Asymptotic Notations: Big-O, omega, theta etc.
Advanced Analysis Technique of algoirthm: Amortized analysis
3L
2. Recursion- Definition, Use, Limitations, Examples: Hanoi problem etc.; Tail Recursion
4L
3. Algorithm Design Techniques
Iterative techniques, Divide and Conquer, DynamicProgramming, Greedy Algorithms.
3L
3.Sorting and Searching Techniques
Elementary sorting techniques–Bubble Sort, InsertionSort, Merge Sort, Advanced Sorting
techniques - Heap Sort, Quick Sort, Sorting in Linear Time - Bucket Sort, Radix Sort and Count
Sort, Searching Techniques, Medians & Order Statistics, complexity analysis; Lower Bounding
Techniques Decision Trees
Linear search, binary search and their time complexity analysis
14L
4. Divide and Conquer:
Basic method, use, Examples: Merge sort, Quick Sort, Binary Search
4L
5. Dynamic Programming:
Basic method, use, Examples: matrix-chain multiplication, All pair shortest paths, single-source
shortest path, Travelling Salesman problem
8L
6. Backtracking:
Basic method, use, Examples: Eight queens problem, Graph coloring problem, Hamiltonian
problem
6L
7. Greedy Method:
Basic method, use, Examples: Knapsack problem, minimum spanning tree (Prim's and Kruskal's
algorithms)
6L
8. Graph algorithms:
Traversal algorithms: BFS and DFS
Ford-Fulkerson Algorithm for Maximum Flow
Shortest Path algorithm: Dijkstra Algorithm; Floyd Algorithm
6L
9. Notion of NP-completeness:
P class, NP-hard class, NP-complete class, Circuit Satisfiability problem, Clique Decision Problem.
6L

Recommended Books:
1. T.H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein Introduction to Algorithms,
PHI, 3rd Edition 2009
2. Sarabasse & A.V. Gelder Computer Algorithm – Introduction to Design and Analysis, Publisher –
Pearson 3rd Edition 1999
3. Goodman: Introduction to Design and Analysis Of Algorithms TMH
4. E.Horowitz and Shani “Fundamentals of Computer algorithms”
5. A.Aho, J.Hopcroft and J.Ullman “The Design and Analysis of algorithms”
6. E.M.Reingold, J.Nievergelt and N.Deo- “Combinational algorithms- Theory and Practice”,
Prentice Hall , 1997
6. Jon Kleinberg and Eva Tardos, Algorithm Design, Pearson Education, 2006
7. Vijay V. Vazirani, Approximation algorithms, Springer

Design and Analysis of Algorithms Lab (UG-H-CC-P-306) Credit-2

1. i. Implement Insertion Sort (The program should report the number of comparisons)
ii. Implement Merge Sort (The program should report the number of comparisons)
2. Implement Heap Sort(The program should report the number of comparisons)
3. Implement Randomized Quick sort (The program should report the number of comparisons)
4. Implement Radix Sort
5. Create a Red-Black Tree and perform following operations on it:
i. Insert a node
ii. Delete a node
iii. Search for a number & also report the color of the node containing this number.
6. Write a program to determine the LCS of two given sequences
7. Implement Breadth-First Search in a graph
8. Implement Depth-First Search in a graph
9. Write a program to determine the minimum spanning tree of a graph

For the algorithms at S.No 1 to 3 test run the algorithm on 100 different inputs of sizes varying from 30 to
1000. Count the number of comparisons and draw the graph. Compare it with a graph of nlogn.
Discrete Structures (UG-H-CC-L-307) Credit-5

1.Introduction:
Sets - finite and Infinite sets, uncountably Infinite Sets; functions, relations, Properties of Binary
Relations, Closure, Partial Ordering Relations; counting - Pigeonhole Principle, Permutation and
Combination; Mathematical Induction, Principle of Inclusion and Exclusion.

2.Growth of Functions:
Asymptotic Notations, Summation formulas and properties, Bounding Summations, approximation
by Integrals

3.Recurrences:
Recurrence Relations, generating functions, Linear Recurrence Relations with constant coefficients
and their solution, Substitution Method, Recurrence Trees, Master Theorem

4.Graph Theory
Basic Terminology, Models and Types, multigraphs and weighted graphs, Graph Representaion,
Graph Isomorphism, Connectivity, Euler and Hamiltonian Paths and Circuits, Planar Graphs, Graph
Coloring, Trees, Basic Terminology and properties of Trees, Introduction to Spanning Trees

5.Propositional Logic
Logical Connectives, Well-formed Formulas, Tautologies, Equivalences, Inference Theory

Recommended Books:
1. C.L. Liu , D.P. Mahopatra, Elements of Discrete mathematics, 2nd Edition , Tata McGraw Hill,
1985,
2. Kenneth Rosen, Discrete Mathematics and Its Applications, Sixth Edition ,McGraw Hill 2006
3. T.H. Coremen, C.E. Leiserson, R. L. Rivest, Introduction to algorithms, 3rd edition Prentice Hall
on India, 2009
4. M. O. Albertson and J. P. Hutchinson, Discrete Mathematics with Algorithms , John wiley
Publication, 1988
5. J. L. Hein, Discrete Structures, Logic, and Computability, 3rd Edition, Jones and Bartlett
Publishers, 2009
6. D.J. Hunter, Essentials of Discrete Mathematics, Jones and Bartlett Publishers, 2008

Discrete Structures Tutorial (UG-H-CC-T-307) Credit-1

Tutorials will be given based on the topics in UG-H-CC-L-307.

Analysis of Algorithm and Data Structures (GE-3): (UG-H-GE-L- Credit-4


303)

Introduction
Basic Design and Analysis techniques of Algorithms, Correctness of Algorithm
(4L)

Algorithm Design Techniques:


Iterative techniques, Divide and Conquer, Dynamic Programming, Greedy Algorithms.
(6L)

Sorting Techniques:
Elementary sorting techniques-Bubble Sort, Insertion Sort, Merge Sort, Advanced Sorting
techniques-Heap Sort, Quick Sort, Sorting in Linear Time-Bucket Sort, Radix Sort and Count Sort
(10L)

Searching Techniques:
Linear and Binary search.
(4L)

Complexity Analysis:
Medians & Order Statistics.
(4L)

Data Structures:
1. Arrays (4 Lectures)
Single and Multi-dimensional Arrays, Sparse Matrices

2. Stacks (5 Lectures)
Implementing stack using array and linked list, Prefix, Infix and Postfix expressions, Utility
and conversion of these expressions from one to another;

3. Queues (5 Lectures)
Array and Linked representation of Queue, De-queue, Priority Queues

4. Linked Lists (5 Lectures)


Singly, Doubly and Circular Lists, representation of Stack and Queue as Linked Lists.

5. Recursion (5 lectures)
Developing Recursive Definition of Simple Problems and their implementation; Advantages
and Limitations of Recursion;

6. Trees (5 Lectures)
Introduction to Tree as a data structure; Binary Trees, Binary Search Tree, (Creation, and
Traversals of Binary Search Trees)

Recommended Books:
1. T.H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein-Introduction to Algorithms,
PHI, 3rd Edition 2009.
2. Sarabasse & A.V. Gelder Computer Algorithm –Introduction to Design and Analysis,Publisher–
Pearson 3rd Edition 1999.
3. Adam Drozdek, "Data Structures and algorithm in C++", Third Edition, Cengage Learning, 2012.
4. SartajSahni, Data Structures, "Algorithms and applications in C++", Second Edition, Universities
Press, 2011.
5. Aaron M. Tenenbaum, Moshe J. Augenstein, YedidyahLangsam, "Data Structures Using C and
C++:, Second edition, PHI, 2009.
6. Robert L. Kruse, "Data Structures and Program Design in C++", Pearson.
7. D.S Malik, Data Structure using C++,Second edition, Cengage Learning, 2010.
Analysis of Algorithm and Data Structures Lab (UG-H-GE-P-303) Credit-2

1. Implement Insertion Sort (The program should report the number of comparisons)
2. Implement Merge Sort(The program should report the number of comparisons)
3. Implement Heap Sort (The program should report the number of comparisons)
4. Implement Randomized Quick sort (The program should report the number of comparisons)
5. Implement Radix Sort.
6. Implement Searching Techniques
7. Implementation of Recursive function.
8. Array and Linked list implementation of Stack and Queue.
9. Implementation of Single, Double and circular Linked List
10. Creation and traversal of Binary Search Tree.

UNIX/LINUX Programming (UG-H-SEC-L-301) Credit-2

Introduction
 What is linux/unix Operating systems
 Difference between linux/unix and other operating systems
 Features and Architecture
 Various Distributions available in the market
 Installation, Booting and shutdown process
 System processes (an overview)
 External and internal commands
 Creation of partitions in OS
 Processes and its creation phases – Fork, Exec, wait

User Management and the File System


 Types of Users, Creating users, Granting rights
 User management commands
 File quota and various file systems available
 File System Management and Layout, File permissions
 Login process, Managing Disk Quotas
 Links (hard links, symbolic links)

Shell introduction and Shell Scripting


 What is shell and various type of shell, Various editors present in linux
 Different modes of operation in vi editor
 What is shell script, Writing and executing the shell script
 Shell variable (user defined and system variables)
 System calls, Using system calls
 Pipes and Filters
 Decision making in Shell Scripts (If else, switch), Loops in shell
 Functions
 Utility programs (cut, paste, join, tr , uniq utilities)
 Pattern matching utility (grep)

Recommended Books:
1. Sumitabha, Das, Unix Concepts And Applications, Tata McGraw-Hill Education, 2006
2. Michael Jang RHCSA/ RHCE Red Hat Linux Certification: Exams (Ex200 & Ex300) (Certification
Press), 2011
3. Nemeth Synder & Hein, Linux Administration Handbook, Pearson Education, 2nd Edition,2010
4. W. Richard Stevens, Bill Fenner, Andrew M. Rudoff, Unix Network Programming, The sockets
Networking API, Vol. 1, 3rd Edition,2014

Semester-IV

Operating System (UG-H-CC-L-408) Credit-5


1. Introduction
Basic OS functions, resource abstraction, types of operating systems–multiprogramming systems,
batch systems , time sharing systems; operating systems for personal computers & workstations,
process control & real time systems.
4L

2. Operating System Organization


Processor and user modes, kernels, system calls and systemprograms.
2L

3. Process Management
Processes
Concept of processes; Process states; PCB; process scheduling; operations on processes; co-
operating processes; interprocess communication.
3L
Threads
Overview, benefits of threads, user and kernel threads.
2L
CPU scheduling
scheduling criteria, preemptive & non-preemptive scheduling, scheduling algorithms (FCFS, SJF,
RR, priority), algorithm evaluation, multi-processor scheduling.
7L
Process Synchronization
Background, critical section problem, critical region, synchronization hardware, classical problems
of synchronization, semaphores; monitor.
6L
Deadlocks
system model, deadlock characterization, methods for handling deadlocks, deadlock prevention,
deadlock avoidance, deadlock detection, recovery from deadlock.
8L

4. Memory Management
Physical and virtual address space; swapping; memory allocation strategies - fixed and variable
partitions; paging; segmentation; segmentation with paging; virtual memory; demand paging; page
replacement algorithms and their relative advantages and disadvantages; thrashing
10L
5. File and I/O Management
File concept, access methods, directory structure, file system structure, allocation methods
(contiguous, linked, indexed), free-space management (bit vector, linked list, grouping), directory
implementation (linear list, hash table), efficiency & performance.
5L
I/O hardware, polling, interrupts, DMA, application I/O interface (block and character devices,
network devices, clocks and timers, blocking and nonblocking I/O), kernel I/O subsystem
(scheduling, buffering, caching, spooling and device reservation, error handling), performance.
5L
Disk management:
Disk structure, disk scheduling (FCFS, SSTF, SCAN,C-SCAN) , disk reliability, disk formatting,
boot block, bad blocks.
4L

6. Protection and Security


Goals of protection, domain of protection, security problem, authentication, one time password,
program threats, system threats, threat monitoring, encryption.
4L

Recommended Books:
1. A Silberschatz, P.B. Galvin, G. Gagne, Operating Systems Concepts, 8th Edition, John Wiley
Publications 2008.
2. A.S. Tanenbaum, Modern Operating Systems, 3rd Edition, Pearson Education 2007.
3. G. Nutt, Operating Systems: A Modern Perspective, 2nd Edition Pearson Education 1997.
4. W. Stallings, Operating Systems, Internals & Design Principles , 5 th Edition, Prentice Hall of
India. 2008.
5. M. Milenkovic, Operating Systems- Concepts and design, Tata McGraw Hill 1992.

Operating System Tutorial (UG-H-CC-T-408) Credit-1

Tutorials will be given based on the topics in UG-H-CC-L-306.

Computer Networks (UG-H-CC-L-409) Credit-5

1. Introduction to Computer Networks


Introduction; Data communications: components, data representation(ASCII,ISO etc.),direction of
data flow(simplex, half duplex, full duplex); Networks: distributed processing, network criteria,
physical structure (type of connection, topology), categories of network (LAN,
MAN,WAN);Internet: brief history, internet today; Protocols and standards; Reference models: OSI
reference model, TCP/IP reference model, their comparative study.
6L

2. Data Communication Fundamentals and Techniques


Analog and digital signal; data-ratelimits; digital to digital line encoding schemes; pulse code
modulation; parallel and serial transmission; digital to analog modulation; multiplexing techniques-
FDM, TDM; transmission media.
5L

3. Networks Switching Techniques and Access mechanisms


Message switching; Circuit switching; Packet witching- connectionless datagram switching,
connection-oriented virtual circuit switching; dial-up modems; digital subscriber line; cable TV for
data transfer.
4L
4. Data Link Layer Functions and Protocol
Error detection and error correction techniques;data-link control- framing and flow control; error
recovery protocols- stop and wait ARQ, go-back-n ARQ; Point to Point Protocol on Internet; HDLC
8L

5. Multiple Access Protocol and Networks


CSMA/CD protocols; Ethernet LANS; connecting LAN and back-bone networks- repeaters, hubs,
switches, bridges, router and gateways
FDDI, token bus, token ring; Reservation, polling, concentration; Multiple access protocols: Pure
ALOHA, Slotted ALOHA
10L

6. Networks Layer Functions and Protocols


Internetworking & devices: Repeaters, Hubs, Bridges, Switches, Router, Gateway; Addressing :
Internet address, classful address, subnetting; Routing : techniques, static vs. dynamic routing ,
routing table for classful address; Routing algorithms: shortest path algorithm, flooding, distance
vector routing, link state routing; Protocols: ARP, RARP, IP, ICMP, IPV6; Unicast and multicast
routing protocols.
13L

7. Transport Layer Functions and Protocols


Process to process delivery; UDP; TCP; Congestion control algorithm: Leaky bucket algorithm,
Token bucket algorithm, choke packets; Quality of service: techniques to improve Qos.
8L

8. Overview of Application layer protocol


Overiview of DNS; SMTP, SNMP, FTP, HTTP & WWW
6L

Recommended Books:
1. B. A. Forouzan: Data Communications and Networking, Fourth edition, THM ,2007.
2. A. S. Tanenbaum: Computer Networks, Fourth edition, PHI , 2002
3. W. Stallings: Data and Computer Communications (5th Ed.), PHI/ Pearson Education
4. Miller: Data Communication & Network, Vikas

Computer Networks Tutorial (UG-H-CC-T-409) Credit-1

Tutorials will be given based on the topics in UG-H-CC-L-409.

Database Management Systems (UG-H-CC-L-410) Credit-4

1.Introduction
Concept & Overview of DBMS, Data Models, Database Languages, Database Administrator,
Database Users, Three Schema architecture of DBMS.
Characteristics of database approach, data models, database system architectureand data
independence.
4L
2.Entity Relationship(ER) Modeling
Basic concepts, Design Issues, Mapping Constraints, Keys, Entity-Relationship Diagram, Weak
Entity Sets, Extended E-R features.
6L

3.Relation data model


Structure of relational Databases, Relational Algebra, Relational Calculus, Extended Relational
Algebra Operations, Views, Modifications Of the Database.
5L

4. SQL and Integrity Constraints


Concept of DDL, DML, DCL. Basic Structure, Set operations, Aggregate Functions, Null Values,
Domain Constraints, Referential Integrity Constraints, assertions, views, Nested Subqueries,
Database security application development using SQL, Stored procedures and triggers.
8L

5. Relational Database Design


Functional Dependency, Different anamolies in designing a Database., Normalization using
funtional dependencies, Decomposition, Boyce-Codd Normal Form, 3NF, Nomalization using
multi-valued depedencies, 4NF, 5NF
10L

6. Internals of RDBMS:
Physical data structures, Query optimization : join algorithm, statistics and cost bas optimization.
Transaction processing
3L
7.Transaction Processing
ACID properties, Concurrency control and Recovery Management : transaction model properties,
state serializability, lock base protocols, two phase locking.
5L

8.File Structure and Indexing


Operations on files, File of Unordered and ordered records, overview of File organizations,
Indexing structures for files (Primary index, secondary index, clustering index), Multilevel indexing
using B and B+ trees.
8L
Recommended Books:
1. Henry F. Korth and Silberschatz Abraham, “Database System Concepts”, Mc.Graw Hill.
2. Elmasri Ramez and Novathe Shamkant, “Fundamentals of Database Systems”, Benjamin
Cummings Publishing. Company.
3. Ramakrishnan: Database Management System , McGraw-Hill
5. Date C. J., “Introduction to Database Management”, Vol. I, II, III, Addison Wesley.
6. Ullman JD., “Principles of Database Systems”, Galgottia Publication.

Database Management Systems Lab (UG-H-CC-P-410) Credit-2

Structured Query Language (SQL)


1. Creating Database:
Creating a Database
Creating a Table
Specifying Relational Data Types
Specifying Constraints
Creating Indexes
2. Table and Record Handling:
INSERT statement
Using SELECT and INSERT together
DELETE, UPDATE, TRUNCATE statements
DROP, ALTER statements
3. Retrieving Data from a Database:
The SELECT statement
Using the WHERE clause
Using Logical Operators in the WHERE clause
Using IN, BETWEEN, LIKE , ORDER BY, GROUP BY and HAVING clasue
Using Aggregate Functions Combining Tables Using JOINS Subqueries
4. Database Management:
Creating Views
Creating Column Aliases
Creating Database Users Using
GRANT and REVOKE
5. Cursors in Oracle PL / SQL
6. Writing Oracle PL / SQL Stored Procedures

Operating System (GE-4): (UG-H-GE-L-404) Credit 5

Introduction: System Software, Resource Abstraction, OS strategies.


2L
Types of operating systems - Multiprogramming, Batch, Time Sharing, Single user and Multiuser,
Process Control & Real Time Systems.
2L
Operating System Organization: Factors in operating system design, basic OS functions,
implementation consideration; process modes, methods of requesting system services – system calls
and system programs.
10L
Process Management : System view of the process and resources, initiating the OS, process address
space, process abstraction, resource abstraction, process hierarchy, Thread model
15L

Scheduling: Scheduling Mechanisms, Strategy selection, non-pre-emptive and pre-emptive


strategies.
12L
Memory Management: Mapping address space to memory space, memory allocation strategies,
fixed partition, variable partition, paging, virtual memory
12L

Shell introduction and Shell Scripting:


What is shell and various type of shell, Various editors present in linux, Different modes of
operation in vi editor, What is shell script, Writing and executing the shell script, Shell variable
(user defined and system variables), System calls, Using system calls, Pipes and Filters, Decision
making in Shell Scripts (If else, switch), Loops in shell, Functions, Utility programs (cut, paste,
join, tr , uniq utilities), Pattern matching utility (grep)
7L

Recommended Books:
1. A Silberschatz, P.B. Galvin, G. Gagne, Operating Systems Concepts, 8th Edition, John Wiley
Publications 2008.
2. A.S. Tanenbaum, Modern Operating Systems, 3rd Edition, Pearson Education 2007.
3. G. Nutt, Operating Systems: A Modern Perspective, 2nd Edition Pearson Education 1997.
4. W. Stallings, Operating Systems, Internals & Design Principles , 5th Edition, Prentice Hall of
India. 2008.
5. M. Milenkovic, Operating Systems- Concepts and design, Tata McGraw Hill 1992.

Operating System Tutorial (UG-H-GE-T-404) Credit 1

Tutorials will be given based on UG-G-CC-L-301C.

Programming with MATLAB (UG-H-SEC-L-402) Credit 2


Unit I
Introduction to Programming: Components of a computer, working with numbers,
Machine
code, Software hierarchy.
(2L)

Unit I
Programming Environment: MATLAB Windows, A First Program, Expressions, Constants,
Variables and assignment statement, Arrays.
(3L)

Unit III
Graph Plots: Basic plotting, Built in functions, Generating waveforms, Sound
replay, load
and save.
(2L)

Unit IV
Procedures and Functions: Arguments and return values, M-files, Formatted console
input-output, String handling.
(3L)

Unit V
Control Statements: Conditional statements: If, Else, Else-if, Repetition statements: While,
for loop.
(2L)

Unit VI
Manipulating Text: Writing to a text file, Reading from a text file, Randomising and
sorting a list, searching a list.
(2L)

Unit VII
GUI Interface: Attaching buttons to actions, Getting Input, Setting Output.
(2L)
Recommended Books:
1. MATLAB: An Introduction with Applications, by Amos Gilat, 2nd edition, Wiley,
2004,
2. C.B. Moler, Numerical Computing with MATLAB, SIAM, 2004.

Software Lab Based on MatLab:


1. Write a program to assign the following expressions to a variable A and then to print out
the value of A.
a. (3+4)/(5+6)
b. 2π2
c. √2
d.(0.0000123 + 5.67×10-3)× 0.4567×10-4

2. Celsius temperatures can be converted to Fahrenheit by multiplying by 9, dividing by 5,


and adding 32. Assign a variable called C the value 37, and implement this formula to
assign a variable F the Fahrenheit equivalent of 37 Celsius.

3. Set up a vector called N with five elements having the values: 1, 2, 3, 4, 5. Using N,
create assignment statements for a vector X which will result in X having these values:
a. 2, 4, 6, 8, 10
b. 1/2, 1, 3/2, 2, 5/2
c. 1, 1/2, 1/3, 1/4, 1/5
d. 1, 1/4, 1/9, 1/16, 1/25

4. A supermarket conveyor belt holds an array of groceries. The price of each product (in
pounds) is [ 0.6, 1.2 ,0.5, 1.3 ] ; while the numbers of each product are [ 3, 2 ,1 ,5 ]. Use
MATLAB to calculate the total bill.

5. The sortrows(x) function will sort a vector or matrix X into increasing row order. Use this
function to sort a list of names into alphabetical order.

6.The ―identity‖matrix is a square matrix that has ones on the diagonal and zeros
elsewhere. You can generate one with the eye() function in MATLAB. Use MATLAB to
find a matrix B, such that when multiplied by matrix A=[ 1 2; -1 0 ] the identity matrix
I=[ 1 0; 0 1 ] is generated. That is A*B=I.

7. Create an array of N numbers. Now find a single MATLAB statement that picks out from
that array the 1,4,9,16,...,√Nth entries, i.e. those numbers which have indices that are
square numbers.

8. Draw a graph that joins the points (0,1), (4,3), (2,0) and (5,-2).

9. The seeds on a sunflower are distributed according to the formula below. Plot a small circle at each of the
first 1000 co-ordinates :
rn = √n
θn = (137.51/180)πn

10.Calculate 10 approximate points from the function y=2x by using the formulae:
i. xn= n
ii. yn= 2n + rand - 0.5
Fit a line of best fit to these points using the function polyfit() with degree=1, and
generate co-ordinates from the line of best fit using polyval(). Use the on-line help to find
out how to use these functions. Plot the raw data and the line of best fit.
11. Calculate and replay 1 second of a sinewave at 500Hz with a sampling rate of 11025Hz.
Save the sound to a file called "ex35.wav". Plot the first 100 samples.

12. Calculate and replay a 2 second chirp. That is, a sinusoid that steadily increases in
frequency with time, from say 250Hz at the start to 1000Hz at the end.

13. Build a square wave by adding together 10 odd harmonics: 1f, 3f, 5f, etc. The amplitude
of the nth harmonic should be 1/n. Display a graph of one cycle of the result
superimposed on the individual harmonics.
14. Write a function called FtoC (ftoc.m) to convert Fahrenheit temperatures into Celsius.
Make sure the program has a title comment and a help page. Test from the command
window with:
i. FtoC(96)
ii. lookfor Fahrenheit
iii. help FtoC

15. Write a program to input 2 strings from the user and to print out (i) the concatenation of
the two strings with a space between them, (ii) a line of asterisks the same length as the
concatenated strings, and (iii) the reversed concatenation. For example:
i. Enter string 1: Mark
ii.Enter string 2: Huckvale
iii.Mark Huckvale
iv.*************
v.elavkcuH kraM

Semester-V
Theory of Computation (UG-H-CC-L-511) Credit-5

1. Languages
Alphabets, string, language, Basic Operations on language, Concatenation, KleeneStar
8L

2. Finite Automata and Regular Languages


Regular Expressions, Transition Graphs, Deterministics and non-deterministic finite automata, NFA
to DFA Conversion, Regular languages and their relationship with finite automata, Pumping lemma
and closure properties of regular languages.
20L

3. Context free languages


Context free grammars, parse trees, ambiguities in grammars and languages, Pushdown automata
(Deterministic and Non-deterministic), Pumping Lemma for CFL, Properties of context free
languages, normal forms.
16L

4.Turing Macines and Models of Computations


RAM, Turing Machine as a model of computation, Universal Turing Machine, Language
acceptability, decidability, halting problem, Recursively enumerable and recursive languages,
unsolvability problems.
16L
Recommended Books:
1. Daniel I.A.Cohen, Introduction to computer theory, John Wiley,1996
2. Lewis & Papadimitriou, Elements of the theory of computation , PHI 1997.
3. Hoperoft, Aho, Ullman, Introduction to Automata theory, Language & Computation 3rd Edition,
Pearson Education. 2006
4. P. Linz, An Introduction to Formal Language and Automata 4th edition Publication Jones Bartlett,
2006
5. Mishra, Chandrasekaran, Theory of Computer Science, 2nd Edition, PHI 2002.

Theory of Computation (UG-H-CC-T-511) Credit-1

Tutorials will be given based on the topics in UG-H-CC-L-512.

Internet Technologies (UG-H-CC-L-512) Credit-4

Java
Use of Objects, Array and ArrayList class
6L

JavaScript
Data types, operators, functions, control structures, events and event handling.
6L

JDBC
JDBC Fundamentals, Establishing Connectivity and working with connection interface, Working with
statements, Creating and Executing SQL Statements, Working with Result Set Objects.
18L

JSP
Introduction to JavaServer Pages, HTTP and Servlet Basics, The Problem with Servlets, The Anatomy of a
JSP Page, JSP Processing, JSP Application Design with MVC, Setting Up the JSP Environment, Implicit JSP
Objects, Conditional Processing, Displaying Values, Using an expression to Set an Attribute, Declaring
Variables and Methods, Error Handling and Debugging, Sharing Data Between JSP Pages, Requests, and
Users, Database Access.
22L

Java Beans
Java Beans Fundamentals, JAR files, Introspection, Developing a simple Bean, Connecting to DB
8L

Recommended Books:
1. Ivan Bayross, Web Enabled Commercial Application Development Using Html, Dhtml,javascript, Perl
Cgi, BPB Publications, 2009.
2. Cay Horstmann, BIG Java, Wiley Publication , 3rd Edition., 2009
3. Herbert Schildt , Java 7, The Complete Reference, , 8th Edition, 2009.
4. Jim Keogh ,The Complete Reference J2EE, TMH, , 2002. 5. O'Reilly , Java Server Pages, Hans Bergsten,
Third Edition, 2003.
5. Web Enabled Commercial Application Development Using Html, Dhtml, javascript, Perl Cgi By
Ivan Bayross, BPB Publications, 2009.
6. BIG Java Cay Horstmann, Wiley Publication , 3rd Edition., 2009
7. Java 7 ,The Complete Reference, Herbert Schildt, 8th Edition, 2009.
8. The Complete Reference J2EE, TMH, Jim Keogh, 2002.
9. Java Server Pages, Hans Bergsten, Third Edition, O'Reilly Media December 2003.

Internet Technologies Lab (UG-H-CC-P-512) Credit-2

Create event driven program for following:


1. Print a table of numbers from 5 to 15 and their squares and cubes using alert.
2. Print the largest of three numbers.
3. Find the factorial of a number n.
4. Enter a list of positive numbers terminated by Zero. Find the sum and average of these numbers.
5. A person deposits Rs 1000 in a fixed account yielding 5% interest. Compute the amount in the
account at the end of each year for n years. Read n numbers. Count the number of negative
numbers, positive numbers and zeros in the list.

JAVA Script:
1. Create a student registration form. Create functions to perform the following checks: a. Roll
number is a 7-digit numeric value b. Name should be an alphabetical value(String) c. Non-empty
fields like DOB
2. Implement a static password protection.
3. Write a java script a. To change the colour of text using SetTimeOut() b. To move an image
across screen using SetInterval()

JAVA Programs:
1. WAP to find the largest of n natural numbers.
2. WAP to find whether a given number is prime or not.
3. WAP to print the sum and product of digits of an Integer and reverse the Integer.
4. Write a program to create an array of 10 integers. Accept values from the user in that array. Input
another number from the user and find out how many numbers are equal to the number passed, how
many are greater and how many are less than the number passed.
5. Write java program for the following matrix operations: a. Addition of two matrices b.
Summation of two matrices c. Transpose of a matrix Input the elements of matrices from user
6. Write a java program that computes the area of a circle, rectangle and a Cylinder using function
overloading.

JDBC:
1. Create a table 'Student' and ‘Teacher’ in 'College' database and insert two rows in this newly
created table using JDBC API and do the following:
a. Update an already created table 'Teacher' in 'College' database by updating a teacher's name, with
"Dr." appended before the name, whose name is "Rita". b. Repeat the same thing for all the teachers
using PreparedStatement. c. Delete the student with ID=3 from 'Student' database. d. Insert two
students to the ResultSet returned by the query which selects all students with FirstName="Ayush".
The database must also get updated along with ResultSet.

2. Create a procedure in MySQL to count the number of Rows in table 'Student'. Use Callable
Statement to call this method from Java code.

JSP:
1.Display the patterns of numbers, characters etc.
2. Make two files as follows: a. main.html: shows 2 text boxes and 3 radio buttons with values
"addition", "subtraction" and "multiplication" b. operate.jsp: depending on what the user selects
perform the corresponding function (Give two implementations: using request.getParameter() and
using expression language)
3. Validate User input entered in a form. The input must include Name, DOB, Email ID, Lucky
Number, Favorite food etc.

Microprocessor (UG-H-DSE-L-501) Credit-4

Introduction to 8085A CPU architecture-register organization, addressing modes and their features.
Software instruction set and Assembly Language Programming. Pin description and features.
16L

Instruction cycle, machine cycle, Timing diagram.


6L

Hardware Interfacing: Interfacing memory, peripheral chips (IO mapped IO & Memory mapped
IO).
6L

Interrupts and DMA. Peripherals: 8279, 8255, 8251, 8253, 8237, 8259, A/D and D/A converters and
interfacing of the same.
18L

Typical applications of a microprocessor.


2L

16 bit processors: 8086 and architecture, segmented memory has cycles, read/write cycle in
min/max mode. Reset operation, wait state, Halt state, Hold state, Lock operation, interrupt
processing. Addressing modes and their features. Software instruction set (including specific
instructions like string instructions, repeat, segment override, lock prefizers and their use) and
Assembly Language programming with the same.
12L

Recommended Books:
1. Microprocessor architecture, programming and applications with 8085/8085A, Wiley eastern Ltd,
1989 by Ramesh S. Gaonkar.
2. Intel Corp: The 8085 / 8085A. Microprocessor Book – Intel marketing communication, Wiley
inter science publications, 1980.
3. An introduction to micro computers Vol.
2 – some real Microprocessor – Galgotia Book Source, New Delhi by Adam Osborne and J. Kane
4. Advanced Microprocessors by Ray and Bhurchandi - TMH
5. Intel Corp. Micro Controller Handbook – Intel Publications, 1994.
6. Microprocessors and Interfacing by Douglas V. Hall, McGraw Hill International Ed. 1992
7. Assembly Language Programming the IBM PC by Alan R. Miller, Subex Inc, 1987
8. The Intel Microprocessors: 8086/8088, 80186, 80286, 80386 & 80486, Bary B. Brey, Prentice
Hall, India 1996.
Microprocessor Lab (UG-H-DSE-P-501) Credit-2

ASSEMBLY LANGUAGE PROGRAMMING


1. Write a program for 32-bit binary division and multiplication
2. Write a program for 32-bit BCD addition and subtraction
3. Write a program for Linear search and binary search.
4. Write a program to add and subtract two arrays
5. Write a program for binary to ascii conversion
6. Write a program for ascii to binary conversion

Digital Image Processing (UG-H-DSE-L-501) Credit-4

1. Introduction (6 Lectures)
Light, Brightness adaption and discrimination, Pixels, coordinate conventions, Imaging Geometry,
Perspective Projection, Spatial Domain Filtering, sampling and quantization.

2. Spatial Domain Filtering (7 Lectures)


Intensity transformations, contrast stretching, histogram equalization, Correlation and convolution,
Smoothing filters, sharpening filters, gradient and Laplacian.

3. Filtering in the Frequency domain (8 Lectures)


Hotelling Transform, Fourier Transforms and properties, FFT (Decimation in Frequency and Decimation in
Time Techniques), Convolution, Correlation, 2-D sampling, Discrete Cosine Transform, Frequency domain
filtering.

4. Image Restoration (8 Lectures)


Basic Framework, Interactive Restoration, Image deformation and geometric transformations, image
morphing, Restoration techniques, Noise characterization, Noise restoration filters, Adaptive filters, Linear,
Position invariant degradations, Estimation of Degradation functions, Restoration from projections.

5. Image Compression (10 Lectures) Encoder-Decoder model, Types of redundancies, Lossy and Lossless
compression, Entropy of an information source, Shannon's 1st Theorem, Huffman Coding, Arithmetic
Coding, Golomb Coding, LZW coding, Transform Coding, Sub-image size selection, blocking artifacts, DCT
implementation using FFT, Run length coding, FAX compression (CCITT Group-3 and Group-4), Symbol-
based coding, JBIG-2, Bit-plane encoding, Bit-allocation, Zonal Coding, Threshold Coding, JPEG, Lossless
predictive coding, Lossy predictive coding, Motion Compensation

6. Wavelet based Image Compression (5 Lectures)


Expansion of functions, Multi-resolution analysis, Scaling functions, MRA refinement equation, Wavelet
series expansion, Discrete Wavelet Transform (DWT), Continuous Wavelet Transform, Fast Wavelet
Transform, 2-D wavelet Transform, JPEG-2000 encoding, Digital Image Watermarking.

7. Morphological Image Processing (7 Lectures) Basics, SE, Erosion, Dilation, Opening, Closing, Hit-or-
Miss Transform, Boundary Detection, Hole filling, Connected components, convex hull, thinning,
thickening, skeletons, pruning, Geodesic Dilation, Erosion, Reconstruction by dilation and erosion.

8. Image Segmentation (9 Lectures)


Boundary detection based techniques, Point, line detection, Edge detection, Edge linking, local
processing, regional processing, Hough transform, Thresholding, Iterative thresholding, Otsu's
method, Moving averages, Multivariable thresholding, Region-based segmentation, Watershed
algorithm, Use of motion in segmentation.
Recommended Books:
1. R C Gonzalez , R E Woods, Digital Image Processing, 3rd Edition, Pearson Education.2008.
2. A K Jain, Fundamentals of Digital image Processing, Prentice Hall of India.1989.
3. K R Castleman, Digital Image Processing, Pearson Education.1996
4. Schalkoff, Digital Image Processing and Computer Vision, John Wiley and Sons.1989.
5. Rafael C. Gonzalez, Richard E. Woods, Steven Eddins,' Digital Image Processing using
MATLAB', Pearson Education, Inc., 2004.

Digital Image Processing Lab (UG-H-DSE-P-501) Credit-2

1. Write program to read and display digital image using MATLAB or SCILAB
a. Become familiar with SCILAB/MATLAB Basic commands
b. Read and display image in SCILAB/MATLAB
c. Resize given image
d. Convert given color image into gray-scale image
e. Convert given color/gray-scale image into black & white image
f. Draw image profile
g. Separate color image in three R G & B planes
h. Create color image using R, G and B three separate planes
i. Flow control and LOOP in SCILAB
j. Write given 2-D data in image file

2. To write and execute image processing programs using point processing method
a. Obtain Negative image
b. Obtain Flip image
c. Thresholding
d. Contrast stretching

3. To write and execute programs for image arithmetic operations


a. Addition of two images
b. Subtract one image from other image
c. Calculate mean value of image
d. Different Brightness by changing mean value

4. To write and execute programs for image logical operations


a. AND operation between two images
b. OR operation between two images
c. Calculate intersection of two images
d. Water Marking using EX-OR operation
e. NOT operation (Negative image)

5. To write a program for histogram calculation and equalization using


a. Standard MATLAB function
b. Program without using standard MATLAB functions
c. C Program

6. To write and execute program for geometric transformation of image


a. Translation
b. Scaling
c. Rotation
d. Shrinking
e. Zooming
7. To understand various image noise models and to write programs for
a. image restoration
b. Remove Salt and Pepper Noise
c. Minimize Gaussian noise
d. Median filter and Weiner filter

8. Write and execute programs to remove noise using spatial filters


a. Understand 1-D and 2-D convolution process
b. Use 3x3 Mask for low pass filter and high pass filter

9. Write and execute programs for image frequency domain filtering


a. Apply FFT on given image
b. Perform low pass and high pass filtering in frequency domain
c. Apply IFFT to reconstruct image

10. Write a program in C and MATLAB/SCILAB for edge detection using different edge detection mask.

11. Write and execute program for image morphological operations erosion and dilation.

12. To write and execute program for wavelet transform on given image and perform inverse wavelet
transform to reconstruct image.

Note: The above programs may also be implemented using C/C++.

Numerical Methods (UG-H-DSE-L-502) Credit-4

1. Numerical analysis and Errors:


Floating point representation and computer arithmetic, Significant digits, Errors: Round-off error,
Local truncation error, Global truncation error, Order of a method, Convergence and terminal
conditions
6L
2. Interpolation:
Newton's forward, backward and divided difference interpolations: formula, derivation, errors,
numerical problems
Lagranges's interpolation: formula, derivation, erros, numerical problem
10L
3. Numerical Differentiation:
Numerical differentiation based on Newton's forward and backward interpolation formual
6L
4. Numerical Integration
Trapezoidal rule
Simpson's one-third rule
Weddle's rule
8L
5. Solution of Algebraic and Transcendental Equations:
Bisection method
Ragula-Falsi method (Method of false position)
Newton-raphson method and its convergence
8L
6. Solution of System of Linear Equations:
Gaussian elimination method
Gauss-Jordan elimination method
Gauss elimination method to compute the inverse of a matrix
Method of matrix factorization
Method of iteration: Jacobi and gaussee-Seidel
12L
7. Numerical Solution of Ordinary Differential Equations
Euler's method
Taylor Series method
Runge-Kutta methods
10L

Recommended Books:
[1] S.A. Mollah: Introduction to Numerical Analysis and Computational Procedures, Books &
Allied Ltd, 5th Revised edition edition (2000)
[2] M.K. Jain, S.R.K. Iyengar and R.K. Jain: Numerical Methods for Scientific and Engineering
Computation, New Age International Publisher, 6/e (2012)
[3] Gupta,S.K.: Numerical Methods for Engineers. Wiley Eastern, New Delhi, 1995
[4] Nurul Islam: Numerical Analysis, Academic Publishers
[5] Data & Jana: Introductory Numerical Analysis, Shreedhar Prakashani

Numerical Methods Lab (UG-H-DSE-P-502) Credit-2

Model Lab programs:


1. Find the roots of the equation by bisection method.
2. Find the roots of the equation by secant/Regula−Falsi method.
3. Find the roots of the equation by Newton’s method.
4. Find the solution of a system of nonlinear equation using Newton’s method.
5. Find the solution of tridiagonal system using Gauss Thomas method.
6. Find the solution of system of equations using Jacobi/Gauss-Seidel method.
7. Find the cubic spline interpolating function.
8. Evaluate the approximate value of finite integrals using Gaussian/Romberg integration.
9. Solve the boundary value problem using finite difference method.

Note: Programming is to be done in C/C++.

Machine Learning (UG-H-DSE-L-502) Credit-4

Introduction:
Concept of Machine Learning, Applications of Machine Learning, Key elements of Machine
Learning, Supervised vs. Unsupervised Learning, Statistical Learning: Bayesian Method, The Naive
Bayes Classifier
10L

Softwares for Machine Learning and Linear Algebra Overview:


Plotting of Data, Vectorization, Matrices and Vectors: Addition, Multiplication, Transpose and
Inverse using available tool such as MATLAB.
10L
Linear Regression: Prediction using Linear Regression, Gradient Descent, Linear Regression with
one variable, Linear Regression with multiple variables, Polynomial Regression, Feature
Scaling/Selection.
10L

Logistic Regression:
Classification using Logistic Regression, Logistic Regression vs. Linear Regression, Logistic
Regression with one variable and with multiple variables.
10L

Regularization: Regularization and its utility: The problem of Overfitting, Application of


Regularization in Linear and Logistic Regression, Regularization and Bias/Variance.
10L

Neural Networks: Introduction, Model Representation, Gradient Descent vs. Perceptron Training,
Stochastic Gradient Descent, Multilayer Perceptrons, Multiclass Representation, Backpropagation
Algorithm.
10L

Recommended Books:
1. Ethem Alpaydin, "Introduction to Machine Learning" 2nd Edition, The MIT Press, 2009.
2. Tom M. Mitchell, "Machine Learning", First Edition by Tata McGraw-Hill Education, 2013.
3. Christopher M. Bishop, "Pattern Recognition and Machine Learning" by Springer, 2007.
4. Mevin P. Murphy, "Machine Learning: A Probabilistic Perspective" by The MIT Press, 2012.

Machine Learning (UG-H-DSE-P-502) Credit-2

For practical Labs for Machine Learning, students may use softwares like MABLAB/Octave or
Python. For later exercises, students can create/use their own datasets or utilize datasets from online
repositories like UCI Machine Learning Repository (http://archive.ics.uci.edu/ml/).

1. Perform elementary mathematical operations in Octave/MATLAB like addition, multiplication,


division and exponentiation.
2. Perform elementary logical operations in Octave/MATLAB (like OR, AND, Checking for
Equality, NOT, XOR).
3. Create, initialize and display simple variables and simple strings and use simple formatting for
variable.
4. Create/Define single dimension / multi-dimension arrays, and arrays with specific values like
array of all ones, all zeros, array with random values within a range, or a diagonal matrix.
5. Use command to compute the size of a matrix, size/length of a particular row/column, load data
from a text file, store matrix data to a text file, finding out variables and their features in the current
scope.
6. Perform basic operations on matrices (like addition, subtraction, multiplication) and display
specific rows or columns of the matrix.
7. Perform other matrix operations like converting matrix data to absolute values, taking the
negative of matrix values, additing/removing rows/columns from a matrix, finding the maximum or
minimum values in a matrix or in a row/column, and finding the sum of some/all elements in a
matrix.
8. Create various type of plots/charts like histograms, plot based on sine/cosine function based on
data from a matrix. Further label different axes in a plot and data in a plot.
9. Generate different subplots from a given plot and color plot data.
10. Use conditional statements and different type of loops based on simple example/s.
11. Perform vectorized implementation of simple matrix operation like finding the transpose of a
matrix, adding, subtracting or multiplying two matrices.
12. Implement Linear Regression problem. For example, based on a dataset comprising of existing
set of prices and area/size of the houses, predict the estimated price of a given house.
13. Based on multiple features/variables perform Linear Regression. For example, based on a
number of additional features like number of bedrooms, servant room, number of balconies, number
of houses of years a house has been built – predict the price of a house.
14. Implement a classification/ logistic regression problem. For example based on different features
of students data, classify, whether a student is suitable for a particular activity. Based on the
available dataset, a student can also implement another classification problem like checking
whether an email is spam or not.
15. Use some function for regularization of dataset based on problem 14.
16. Use some function for neural networks, like Stochastic Gradient Descent or backpropagation -
algorithm to predict the value of a variable based on the dataset of problem 14.

Semester-VI

Software Engineering (UG-H-CC-L-613) Credit-5

1.Introduction
The Evolving Role of Software, Software Characteristics, Changing Nature ofSoftware, Software
Engineering as a Layered Technology, Software Process Framework, Framework and Umbrella
Activities, Process Models, Capability Maturity Model Integration (CMMI).
9L

2.Requirement Analysis
Software Requirement Analysis, Initiating Requirement EngineeringProcess, Requirement Analysis
and Modeling Techniques, Flow Oriented Modeling, Need for SRS, Characteristics and
Components of SRS.
8L

3.Software Project Management


Estimation in Project Planning Process, Project Scheduling.
8L
4.Risk Management
Software Risks, Risk Identification, Risk Projection and Risk Refinement,RMMM Plan.
8L
5.Quality Management
Quality Concepts, Software Quality Assurance, Software Reviews,Metrics for Process and Projects.
8L
6.Design Engineering
Design Concepts, Architectural Design Elements, Software Architecture, Data Design at the
Architectural Level and Component Level, Mapping of Data Flow into Software Architecture,
Modeling Component Level Design.
9L
7.Testing Strategies & Tactics
Software Testing Fundamentals, Strategic Approach to SoftwareTesting, Test Strategies for
Conventional Software, Validation Testing, System testing, Black-Box Testing, White-Box Testing
and their type, Basis Path Testing.
10L
Recommended Books:
1. R.S. Pressman, Software Engineering: A Practitioner‘s Approach (7th Edition), McGrawHill,
2009.
2. P. Jalote, An Integrated Approach to Software Engineering (2nd Edition), Narosa Publishing
House, 2003.
3. K.K. Aggarwal and Y. Singh, Software Engineering ( 2nd Edition), New Age International
Publishers, 2008.
4. I. Sommerville, Software Engineering (8th edition), Addison Wesley, 2006.
5. D. Bell, Software Engineering for Students (4th Edition), Addison-Wesley, 2005.
6. R. Mall, Fundamentals of Software Engineering (2nd Edition), Prentice-Hall of India, 2004.

Software Engineering Tutorial (UG-H-CC-T-613) Credit-1

Tutorials will be given based on the topics in UG-H-CC-L-613.


Computer Graphics (UG-H-CC-L-614) Credit-4

Introduction to computer graphics & graphics systems:


Overview of computer graphics, representing pictures, preparing, presenting & interacting with
pictures for presentations; Visualization & image processing; RGB color model, direct coding,
lookup table; storage tube graphics display, Raster scan display, 3D viewing devices, Plotters,
printers, digitizers, Light pens etc.; Active & Passive graphics devices; Computer graphics software.
10L
Scan conversion:
Points & lines, Line drawing algorithms; DDA algorithm, Bresenham’s line algorithm, Circle
generation algorithm; Ellipse generating algorithm; scan line polygon, fill algorithm, boundary fill
algorithm, flood fill algorithm.
10L

2D transformation & viewing [8L]


Basic transformations: translation , rotation, scaling ; Matrix representations & homogeneous
coordinates, transformations between coordinate systems; reflection shear; Transformation of
points, lines , parallel lines, intersecting lines. Viewing pipeline, Window to viewport co-ordinate
transformation , clipping operations , point clipping , line clipping, clipping circles , polygons &
ellipse.
14L

3D transformation & viewing


3D transformations: translation, rotation, scaling & other transformations. Rotation about an
arbitrary axis in space, reflection through an arbitrary plane; general parallel projection
transformation; clipping, viewport clipping, 3D viewing.
12L
Curves
Curve representation, surfaces , designs , Bezier curves , B-spline curves, end conditions for
periodic B-spline curves, rational B-spline curves.
5L
Hidden surfaces
Depth comparison, Z-buffer algorithm, Back face detection, BSP tree method, the Printer’s
algorithm, scan-line algorithm; Hidden line elimination, wire frame methods , fractal - geometry.
5L
Color & shading models:
Light & color model; interpolative shading model; Texture;
4L

Recommended Books:
1. J.D.Foley, A.Van Dan, Feiner, Hughes Computer Graphics Principles & Practice 2nd edition
Publication Addison Wesley 1990.
2. D.Hearn, Baker: Computer Graphics, Prentice Hall of India 2008.
3. D.F.Rogers Procedural Elements for Computer Graphics, McGraw Hill 1997.
4. D.F.Rogers, Adams Mathematical Elements for Computer Graphics, McGraw Hill 2nd edition
1989.
5. Hearn, Baker: Computer Graphics ( C version 2nd Ed.), Pearson education
6. Mukherjee: Fundamentals of Computer graphics & Multimedia, PHI
7. Mukherjee Arup: Introduction to Computer Graphics, Vikas

Computer Graphics Lab (UG-H-CC-P-614) Credit-2

Model Lab programs:


1. Write a program to implement Bresenham‘s line drawing algorithm.
2. Write a program to implement mid-point circle drawing algorithm.
3. Write a program to clip a line using Cohen and Sutherland line clipping algorithm.
4. Write a program to clip a polygon using Sutherland Hodgeman algorithm.
5. Write a program to apply various 2D transformations on a 2D object (use homogenous
coordinates).
6. Write a program to apply various 3D transformations on a 3D object and then apply parallel and
perspective projection on it.
7. Write a program to draw Hermite/Bezier curve.

System Programming (UG-H-DSE-L-603) Credit-4

Introduction:
Overview of compilation, Phases of a compiler
6L
Assemblers & Loaders, Linkers:
One pass and two pass assembler, design of an assembler, Absolute loader, relocation and linking
concepts, relocating loader and Dynamic Linking.
12L
Lexical Analysis:
Role of a Lexical analyzer, Specification and recognition of tokens, Symbol table, lex
12L
Parsing:
Bottom up parsing- LR parser, yacc.
Intermediate representations
Three address code generation, syntax directed translation, translation of types, control statements
16L
Storage organization:
Activation records, stack allocation
6L
Code Generation:
Object code generation
8L

Recommended Books:
1. Santanu Chattopadhyaya, Systems Programming, PHI, 2011.
2. Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Compilers: Principles, Techniques,
and Tools, 2nd edition, Prentice Hall, 2006.
3. D. M. Dhamdhere, Systems Programming, Tata McGraw Hill, 2011.
4. Leland Beck, D. Manjula, System Software: An Introduction to System Programming, 3 rd
edition, Pearson Education, 2008.
5. Grune D, Van Reeuwijk . K, Bal H. E, Jacobs C J H, Langendoen K, Modern Compiler Design,
2nd edition, Springer, 2012

System Programming Lab (UG-H-DSE-P-603) Credit-2

Model Lab programs:


[1] To implement an assembler for a hypothetical language.
[2] To get familiar with lex: write a program to recognize numbers, identifiers.
[3] To get familiar with yacc: write a desk calculator.

Introduction to Data Science (UG-H-DSE-L-603) Credit-4

Data Scientist’s Tool Box: Turning data into actionable knowledge, introduction to the tools that
will be used in building data analysis software: version control, markdown, git, GitHub, R, and
Rstudio.
15L

R Programming Basics: Overview of R, R data types and objects, reading and writing data, Control
structures, functions, scoping rules, dates and times, Loop functions, debugging tools, Simulation,
code profiling
15L

Getting and Cleaning Data: Obtaining data from the web, from APIs, from databases and from
colleagues in various formats. basics of data cleaning and making data ―tidy.
10L

Exploratory Data Analysis: Essential exploratory techniques for summarizing data, applied before
formal modeling commences, eliminating or sharpening potential hypotheses about the world that
can be addressed by the data, common multivariate statistical techniques used to visualize high-
dimensional data.
10L

Reproducible Research: Concepts and tools behind reporting modern data analyses in a
reproducible manner, To write a document using R markdown, integrate live R code into a literate
statistical program, compile R markdown documents using knitr and related tools, and organize a
data analysis so that it is reproducible and accessible to others.
10L

Recommended Books:
1. Rachel Schutt, Cathy O'Neil, "Doing Data Science: Straight Talk from the Frontiline" by
Schroff/O'Reilly, 2013.
2. Foster Provost, Tom Fawcett, "Data Science for Business" What You Need to Know About Data
Mining and Data-Analytic Thinking" by O'Reilly, 2013.
3. John W. Foreman, "Data Smart: Using data Science to Transform Information into Insight" by
John Wiley & Sons, 2013.
4. Ian Ayres, "Super Crunchers: Why Thinking-by-Numbers Is the New Way to Be Smart" Ist
Edition by Bantam, 2007.
5. Eric Seigel, "Predictive Analytics: The Power to Predict who Will Click, Buy, Lie, or Die", 1st
Edition, by Wiley, 2013.

Introduction to Data Science Lab (UG-H-DSE-P-603) Credit-2

1. Write a program that prints “Hello World” to the screen.


2. Write a program that asks the user for a number n and prints the sum of the numbers 1 to n.
3. Write a program that prints a multiplication table for numbers up to 12.
4. Write a function that returns the largest element in a list.
5. Write a function that computes the running total of a list. 6. Write a function that tests whether a
string is a palindrome.
7. Implement linear search.
8. Implement binary search.
9. Implement matrices addition , subtraction and Multiplication
10. Fifteen students were enrolled in a course. There ages were: 20 20 20 20 20 21 21 21 22 22 22
22 23 23 23
i. Find the median age of all students under 22 years
ii. Find the median age of all students
iii. Find the mean age of all students
iv. Find the modal age for all students
v. Two more students enter the class. The age of both students is 23. What is now mean, mode and
median ?
12. Obtain probability distribution of , where X is number of spots showing when a six-sided
symmetric die (i.e. all six faces of the die are equally likely) is rolled. Simulate random samples of
sizes 40, 70 and 100 respectively and verify the frequency interpretation of probability.
13. Make visual representations of data using the base, lattice, and ggplot2 plotting systems in R,
apply basic principles of data graphics to create rich analytic graphics from available datasets.
Project Work/Dissertation (UG-H-DSE-PRO-604) Credit-6

• This option is to be offered only in beginning of 6th Semester.


• The students will be allowed to work on any project based on the concepts studied in core/elective
or skill based elective courses.
• The group size should be maximum of three (03) students.
• Each group will be assigned a teacher as a supervisor who will handle both their theory as well lab
classes.
• Ideally four (04) projects would be assigned to one teacher.
• Theory classes will cover project management techniques.

END
Syllabus and scheme for

Examination in B.Sc. General

in

Computer Science
University of Kalyani
Three-year Semister-wise B.Sc. (General) Courses of Studies in
Computer Science effective from the Academic Session 2018-2019

Computer Science General Course


Course Structure

SEMESTER-I
Course Code Course Title Course wise Class Credit
(L+T+P)
UG-G-CC-L-101A Computer Fundamentals andProgramming using Core Theory 4
C(CC-1A)
UG-G-CC-P-101A Programming using C Lab (CC-1A/P) Core Practical 2
CC-2A Core 6
CC-3A Core 6
AECC-101 Environmental Science/English/MIL AECC 2
Communication (AECC-1)
Total 4 courses Total 20
SEMESTER-II
Course Code Course Title Course Nature Credit
UG-G-CC-L-201B Computer System Architecture (CC-1B) Core Theory 5
UG-G-CC-T-201B Computer System Architecture Tutorial(CC-1B/T) Core Tutorial 1
CC-2B Core 6
CC-3B Core 6
AECC-202 Environmental Science/English/MIL AECC 2
Communication(AECC-2)
Total 4 courses Total 20
SEMESTER-III
Course Code Course Title Course Nature Credit
UG-G-CC-L-301C Analysis of Algorithms and Data Structures (CC- Core Theory 4
1C)
UG-G-CC-P-301C Analysis of Algorithms and Data Structures (CC- Core Practical 2
1C/P)
CC-2C Core 6
CC-3C Core 6
UG-G-SEC-P-301 Any one of the following(SEC-1): SEC Theory 2
1. Office Automation Tools
2. System Administration and Maintainence

Total 4 courses Total 20


SEMESTER-IV
Course Code Course Title Course Nature Credit
UG-G-CC-L-401D Operating System (CC-1D) Core Theory 5
UG-G-CC-T-401D Operating System Tutorial (CC-1D/T) Core Tutorial 1
CC-2D Core 6
CC-3D Core 6
UG-G-SEC-P-402 Any one of the following(SEC-2): SEC 2
1. HTML Programming
2. XML Programming
Total 4 courses Total 20
SEMESTER-V
Course Code Course Title Course Nature Credit
UG-G-DSE-L-501A Database Management Systems (DSE-1A) DSE Theory 4
UG-G-DSE-P-501A Database Management Systems Lab (DSE-1A/P) DSE Practical 2
DSE-2A DSE 6
DSE-3A DSE 6
Any one of the following (SEC-3): SEC 2
UG-G-SEC-P-503 1. Programming in Visual Basic/GAMBAS
2. Multimedia And Applications
Total 4 courses Total 20
SEMESTER-VI
Course Code Course Title Course Nature Credit
UG-G-DSE-PRO-601B Project Work (DSE-1B) DSE 6
DSE-2B DSE 6
DSE-3B DSE 6
Any one of the following (SEC-4): SEC 2
UG-G-SEC-P-604 1. MySQL Programming (using SQL/PL-SQL)
2. R Programming
Total 4 courses Total 20
Total (All semesters) 24 courses Total 120

Courses to be Offered by other Departments


CC-2A
CC-3A
CC-2B
Core Courses CC-3B
CC-2C
CC-3C
CC-2D
CC-3D
DSE-2A
Discipline Specific Electives DSE-3A
DSE-2B
DSE-3B

No. of classes per week:


L T P
Core Course 4 1 4
Discipline Specific Elective 4 1 4
Skill Enhancement Course 1 1 2
L: Theory; T: Tutorial; P: Practical/Lab

Note:
(1) At least 60 periods of classes must be taken for subjects with credits 4 or 5.
(2) Wherever there is a practical there will be no tutorial and vice-versa.
(3) The size of the practical group for practical papers is recommended to be 10-15 students.
(4) The size of tutorial group for papers without practical is recommended to be 8-10 students.

Internal Assesment End Semester Exam


Theoretical Paper 20 80
Practical Paper 20 80
 In Tutorial no end semester examination will be conducted by the university. In Tutorial at least two class
tests must be conducted by the respective colleges and at the end of the semester an assigment copy must
be submitted by each student.
Marks distribution in question papers of theoretical subjects with credit 4 or 5 in semester
examination:
Total Marks = 80

Group A: Answer any 10 questions (2 X 10 = 20)


Q. No. 1. (i) to (xiv)
Group B: Answer any 3 questions (5 X 3 = 15)
Q. No. 2. to 6.

Group C: Answer any 3 questions (15 X 3 = 45)


Q. No. 7. to 11.
Detailed Syllabus Semesterwise

Semester-I
Environmental Science / English/ MIL Communication (AECC-101) Credit-2

TBA

Computer Fundamentals and Programming using C (UG-G-CC-L-101A) Credit 4

C Language preliminaries:
C character set, Identifiers and keywords, Data types, Declarations, Expressions, statements and
symbolic constants.
5L
Input-Output:
getchar, putchar, scanf, printf, gets, puts, functions.
4L
Pre-processor commands:
#include, #define, #ifdef
3L
Operators and expressions:
Arithmetic, unary, logical, bit-wise, assignment and conditional operators
6L
Storage types:
Automatic, external, register and static variables.
4L
Functions:
Defining and accessing, passing arguments, Function prototypes, Recursion, Library functions,
Static functions
8L
Arrays:
Defining and processing, Passing arrays to a function, Multi dimensional arrays. 11. Strings: 6 Hrs
Defining and operations on strings.
6L
Pointers:
Declarations, Passing pointers to a function, Operations on pointers, Pointer Arithmetic, Pointers
and arrays, Arrays of pointers function pointers.
6L
Structures:
Defining and processing, Passing to a function, Unions, typedef, array of structure, and pointer to
structure
6L
File structures:
Definitions, concept of record, file operations: Storing, creating, retrieving, updating Sequential,
relative, indexed and random access mode, Files with binary mode (Low level), performance of
Sequential Files, Direct mapping techniques: Absolute, relative and indexed sequential files (ISAM)
concept of index, levels of index, overflow of handling.
6L
File Handling: File operation: creation, copy, delete, update, text file, binary file.
6L
Recommended Books:
1. Kernighan, Brian W., and Dennis M. Ritchie.The C programming language. 2006.
2. Schildt, Herbert, and C. Turbo. "C: the complete reference, Osborne." (2000).
3. Balagurusamy, E. programming in ANSI C. Tata McGraw-Hill Education, 2002.
4. Kanetkar, Yashavant P. Let us C. BPB publications, 2016.

Programming using C Lab (UG-G-CC-P-101A) Credit 2


Programs on the following topics:

Introduction: History, Basic Structure, Algorithms, Structured programming constructs.

C Programming elements: Character sets, Keywords, Constants, Variables, Data Types, Operators-
Arithmetic, Relational, Logical and Assignment; Increment and Decrement and Conditional, Operator
Precedence and Associations; Expressions, type casting. Comments, Functions, Storage Classes, Bit
manipulation, Input and output.

C Preprocessor: File inclusion, Macro substitution.


Statements: Assignment, Control statements- if, ifelse, switch, break, continue, goto, Loops-while, do-while,
for.

Functions: argument passing, return statement, return values and their types, recursion

Arrays: String handling with arrays, String handling functions.

Pointers: Definition and initialization, Pointer arithmetic, Pointers and arrays, String functions and
manipulation, Dynamic storage allocation.

User defined Data types: Enumerated data types, Structures. Structure arrays, Pointers to Functions and
Structures, Unions.

File Access: Opening, Closing, I/O operations.

Semester-II

Environmental Science / English / MIL communication (AECC-202) Credit 2

TBA

Computer System Architecture (UG-G-CC-L-201B) Credit 5

1. Introduction
Logic gates, boolean algebra, combinational circuits, circuit simplification, flip-flops and sequential
circuits, decoders, multiplexers, registers, counters and memory units.
9L
2. Data Representation and Basic Computer Arithmetic
Number systems, complements, fixed and floating point representation, character representation,
addition, subtraction, magnitude comparison, multiplication and division algorithms for integers
12L
3. Basic Computer Organization and Design
Computer registers, bus system, instruction set, timing and control, instruction cycle, memory
reference, input-output and interrupt, Interconnection Structures, Bus Interconnection design of
basic computer.
10L
4. Central Processing Unit
Register organization, arithmetic and logical micro-operations, stack organization, micro
programmed control. Instruction formats, addressing modes, instruction codes, machine language,
assembly language, input output programming, RISC, CISC architectures, pipelining and parallel
architecture.
9L
5. Memory Organization
Cache memory, Associative memory, mapping.
10L
6. Input-Output Organization
Input / Output: External Devices, I/O Modules, Programmed I/O, Interrupt-Driven I/O, Direct
Memory Access, I/O Channels.
10L

Recommended Books:
1. M. Mano, Computer System Architecture, Pearson Education 1992
2. A. J. Dos Reis, Assembly Language and Computer Architecture using C++ and JAVA, Course
Technology, 2004
3. W. Stallings, Computer Organization and Architecture Designing for Performance, 8th Edition,
Prentice Hall of India,2009
4. M.M. Mano , Digital Design, Pearson Education Asia,2013
5. Carl Hamacher, Computer Organization, Fifth edition, McGrawHill, 2012.

Computer System Architecture Tutorial (UG-G-CC-T-201B) Credit 1

Tutorials will be given based on the topics covered in UG-G-CC-L-201B.

Semester-III

Analysis of Algorithm and Data Structures (UG-G-CC-L-301C) Credit-4

Introduction
Basic Design and Analysis techniques of Algorithms, Correctness of Algorithm
(4L)

Algorithm Design Techniques:


Iterative techniques, Divide and Conquer, Dynamic Programming, Greedy Algorithms.
(6L)

Sorting Techniques:
Elementary sorting techniques-Bubble Sort, Insertion Sort, Merge Sort, Advanced Sorting
techniques-Heap Sort, Quick Sort, Sorting in Linear Time-Bucket Sort, Radix Sort and Count Sort
(10L)

Searching Techniques:
Linear and Binary search.
(4L)

Complexity Analysis:
Medians & Order Statistics.
(4L)

Data Structures:
1. Arrays (4 Lectures)
Single and Multi-dimensional Arrays, Sparse Matrices

2. Stacks (5 Lectures)
Implementing stack using array and linked list, Prefix, Infix and Postfix expressions, Utility
and conversion of these expressions from one to another;

3. Queues (5 Lectures)
Array and Linked representation of Queue, De-queue, Priority Queues

4. Linked Lists (5 Lectures)


Singly, Doubly and Circular Lists, representation of Stack and Queue as Linked Lists.

5. Recursion (5 lectures)
Developing Recursive Definition of Simple Problems and their implementation; Advantages
and Limitations of Recursion;

6. Trees (5 Lectures)
Introduction to Tree as a data structure; Binary Trees, Binary Search Tree, (Creation, and
Traversals of Binary Search Trees)

Recommended Books:
1. T.H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein-Introduction to Algorithms,
PHI, 3rd Edition 2009.
2. Sarabasse & A.V. Gelder Computer Algorithm –Introduction to Design and Analysis,Publisher–
Pearson 3rd Edition 1999.
3. Adam Drozdek, "Data Structures and algorithm in C++", Third Edition, Cengage Learning, 2012.
4. SartajSahni, Data Structures, "Algorithms and applications in C++", Second Edition, Universities
Press, 2011.
5. Aaron M. Tenenbaum, Moshe J. Augenstein, YedidyahLangsam, "Data Structures Using C and
C++:, Second edition, PHI, 2009.
6. Robert L. Kruse, "Data Structures and Program Design in C++", Pearson.
7. D.S Malik, Data Structure using C++,Second edition, Cengage Learning, 2010.

Analysis of Algorithm and Data Structures Lab (UG-G-CC-P-301C) Credit-2

1. Implement Insertion Sort (The program should report the number of comparisons)
2. Implement Merge Sort(The program should report the number of comparisons)
3. Implement Heap Sort (The program should report the number of comparisons)
4. Implement Randomized Quick sort (The program should report the number of comparisons)
5. Implement Radix Sort.
6. Implement Searching Techniques
7. Implementation of Recursive function.
8. Array and Linked list implementation of Stack and Queue.
9. Implementation of Single, Double and circular Linked List
10. Creation and traversal of Binary Search Tree.

Office Automation Tools (UG-G-SEC-P-301) Credit-2

MS Word:
Introduction, Windows 2007 Interface, Customizing the Word Application, Document Views, Basic
Formatting in MS Word 2007, Advanced Formatting, Navigating through a Word Document,
Performing a Mail Merge, A Quick Look at Macros, Printing Documents, Print Preview
13L
Excel 2007:
Introduction, Workbook, Worksheet, Formatting in excel, Advanced formatting in Excel, Working
with formulas, Printing worksheets
14L
MS PowerPoint:
Introduction, Creating a Presentation, Basic Formatting in PowerPoint, Advanced Formatting,
Using Templates, Inserting charts, Inserting tables, Printing presentations
14L

MS Access:
Access Basics, Design a Database, Build a Database, Work with Forms, Sort, Retrieve, Analyze
Data, Work With Reports, Access with Other Applications, Manage an Access Database
14L

Security and Networking:


Introduction, Simple Fine Sharing, Internet Information Services, Peer to Peer Networking
5L

Recommended Books:
1. Sushila Madan, Introduction to Essential tools, JBA, 2009.
2. Anita Goel, Computer Fundamentals, Pearson, 2012.

System Administration and Maintenance (UG-G-SEC-P-301) Credit-2

Part I (Linux/Unix)
(8L)
 Basics of operating system, services,
 Installation and configuration, maintenance
 What is linux/unix Operating systems, Kernel, API, cli, gui,
 Difference between linux/unix and other operating systems
 Features and Architecture
 Linux features, advantages, disadvantages

Part II(Windows)
(8L)
 Windows as operating system, history, versions.
 PC hardware, BIOS, Devices and drivers,
 Kernal Configuration and building
 Application installation, configuration and maintenance
 Server services and Client services
 Difference between WindowsXP/windows7 and windows server 2003/2008

Software Lab Based on System Administration and Maintenance

Linux:
 Linux Desktop tour. Configuring desktop environment and desktop settings.
 Basic Commands :Terminal, shell,Cat, ls, cd, date, cal, man, echo, pwd, Mkdir, rm, rmdir
Ps, kill
 Package Installation Synaptic package manager

Windows:
 Creating users – Admin and regular.
o Path of their personal files. Adding and changing passwords.
o Difference between workgroup and domain. Concept of roles.
o user profiles – creating and roaming Concept of Active Directory. Creating active
directory in windows 2003/2008.
 Process and Disk management
o Windows Task manager. File systems – NTFS, FAT.
 Services
o Control Panel
C:/program Files, C:/system C:/windows Add /remove new hardware (like printer ),
Add/remove new programmes.

 Network Administration
o Ipconfig,Ping, tracert, route, hostname, net, netstat, whoami Set manual IP address,
check connectivity – ipv4, ipv6
 Administrator Tools
o Control Panel -> Administrative Tools
o Computer Management, Local security Policy, Performance Monitor, Task
Scheduler, Antivirus and firewall.
 Misc Start->Accessories->System tools -> All options (Remote desktop, backup/restore etc.)
 LAN – sharing printer, files and folder over the network.

Semester-IV

Operating System (UG-G-CC-L-401D) Credit 5

Introduction: System Software, Resource Abstraction, OS strategies.


2L
Types of operating systems - Multiprogramming, Batch, Time Sharing, Single user and Multiuser,
Process Control & Real Time Systems.
2L
Operating System Organization: Factors in operating system design, basic OS functions,
implementation consideration; process modes, methods of requesting system services – system calls
and system programs.
10L
Process Management : System view of the process and resources, initiating the OS, process address
space, process abstraction, resource abstraction, process hierarchy, Thread model
15L

Scheduling: Scheduling Mechanisms, Strategy selection, non-pre-emptive and pre-emptive


strategies.
12L
Memory Management: Mapping address space to memory space, memory allocation strategies,
fixed partition, variable partition, paging, virtual memory
12L

Shell introduction and Shell Scripting:


What is shell and various type of shell, Various editors present in linux, Different modes of
operation in vi editor, What is shell script, Writing and executing the shell script, Shell variable
(user defined and system variables), System calls, Using system calls, Pipes and Filters, Decision
making in Shell Scripts (If else, switch), Loops in shell, Functions, Utility programs (cut, paste,
join, tr , uniq utilities), Pattern matching utility (grep)
7L

Recommended Books:
1. A Silberschatz, P.B. Galvin, G. Gagne, Operating Systems Concepts, 8th Edition, John Wiley
Publications 2008.
2. A.S. Tanenbaum, Modern Operating Systems, 3rd Edition, Pearson Education 2007.
3. G. Nutt, Operating Systems: A Modern Perspective, 2nd Edition Pearson Education 1997.
4. W. Stallings, Operating Systems, Internals & Design Principles , 5th Edition, Prentice Hall of
India. 2008.
5. M. Milenkovic, Operating Systems- Concepts and design, Tata McGraw Hill 1992.

Operating System Tutorial (UG-G-CC-T-401D) Credit 1

Tutorials will be given based on UG-G-CC-L-401D.

HTML Programming (UG-G-SEC-P-402) Credit-2


 Unit-I: Introduction (1L)
 Unit-II: The Basics (2L)
o The Head, the Body
o Colors, Attributes
o Lists, ordered and unordered
 Unit-III: Links (3L)
o Introduction
o Relative Links, Absolute Links
o Link Attributes
o Using the ID Attribute to Link Within a Document
 Unit-IV: Images (2L)
o Putting an Image on a Page
o Using Images as Links
o Putting an Image in the Background
 Unit V: – Tables (4L)
o Creating a Table
o Table Headers
o Captions
o Spanning Multiple Columns
o Styling Table
 Unit VI – Forms (3L)
o Basic Input and Attributes
o Other Kinds of Inputs
o Styling forms with CSS
o Where To Go From Here

Book Recommended:
1. Introduction to HTML and CSS -- O'Reilly , 2010
2. Jon Duckett, HTML and CSS, John Wiely, 2012

Software Lab Based on HTML:


Q.1 Create an HTML document with the following formatting options:
I. Bold
II. Italics
III. Underline
IV. Headings (Using H1 to H6 heading styles)
V. Font (Type, Size and Color)
VI. Background (Colored background/Image in background)
VII. Paragraph
VIII. Line Break
IX. Horizontal Rule
X. Pre tag
Q.2 Create an HTML document which consists of:
I. Ordered List
II. Unordered List
III. Nested List
IV. Image
Q.3 Create an HTML document which implements Internal linking as well as External
linking.
Q.4 Create a table using HTML which consists of columns for Roll No., Student’s name and
grade.

Result
Roll No. Name Grade

Q.5 Create a Table with the following view:


Place an image here

Q.6 Create a form using HTML which has the following types of controls:
I. Text Box
II. Option/radio buttons
III. Check boxes
IV. Reset and Submit buttons

Q.7 Create HTML documents (having multiple frames) in the following three formats:

Frame 1

Frame 2
Frame 1

Frame 2 Frame 3

XML Programming (UG-G-SEC-P-402) Credit-2

Introduction:
Understanding Mark-up Languages, Introduction to XML and its Goals. (3L)

XML Basics:
XML Structure and Syntax, Document classes and Rules. (5L)

Other XML Concepts:


Scripting XML, XML as Data, Linking with XML. (4L)

XML with Style:


XSL –Style Sheet Basics, XSL basics, XSL style sheets. (3L)

Books Recommended
1. William J. Pardi , XML in action web technology, Microsoft Press, 1999
2. Michael J. Young ,Step by Step XML , Microsoft Press, 2002

Software Lab Based on XML:


Exercise #1 – Information Structure
In this exercise, student will practice identifying the structure of an information object.
For the sample document provided below:
Label the information structures you see, including containing structures.
12. Draw a tree representation of the structure.

Exercise 2# Deconstructing an XML Document


In this exercise, student will practice identifying the explicit structure within an XML
document.
In a sense, this is the reverse of what you did in Exercise #1. For the sample XML markup
below,
create a document-like representation (or a simple drawing) for the content contained within
the
XML tags:
<book>
<coverInfo>
<title>The XML Handbook</title>
<author>Charles F. Goldfarb</author>
<author>Paul Prescod</author>
<edition>Second</edition>
<description>The definitive XML resource: applications, products, and technologies.
Revised
and expanded—over 600 new pages.
</description>
</coverInfo>
</book>

Exercise #3 – Creating XML Markup


In this exercise, create some XML markup based on the tree representation from Exercise #1
above, and the content from the original sample document.

Exercise #4 – Well-Formedness
This exercise checks your understanding of the constraints for well-formedness. Are the
following document instances well-formed? Explain any NO answers.

<list><title>The first list</title><item>An item</list>

<item>An item</item><item>Another item</item>

<para>Bathing a cat is a <emph>relatively</emph> easy task as long as the cat is


willing.</para>

<bibl><title>How to Bathe a Cat<author></title>Merlin Bauer<author></bibl>

Exercise #5-Well Formedness


This exercise is a bit more challenging than the previous example. Here is a fragment of an
XML
document instance. Identify all the places where it fails to match the constraints for
wellformedness.
<PROCEDURE><TITLEHow to Bathe a Cat</TITLE>
<OVERVIEW>
This procedure tells you how to bathe a cat. <WARNING></OVERVIEW>Cats don't like to
take
baths. You could get hurt doing this. Be sure to obtain all the required protective gear before
you
start. </WARNING><EQUIPEMENT><ITEM>Hockey Mask <ITEM>Padded Full-body
Kevlar
Armor</ITEM><ITEM>Tub full of warm water</ITEM><ITEM>Towels
</ITEM><ITEM>First Aid kit</ITEM><ITEM>Cat Shampoo</ITEM>
<EQUIPMENT><INSTRUCTIONS> <STEP> Locate the cat, who by now is hiding under
the
bed.</STEP><STEP>Place the cat in the tub of water.</STEP> <ITEM>Using the First Aid
kit,
repair the damage to your head and arms.</STEP> <STEP>Place the cat back in the tub and
hold
it down.</STEP> <STEP>Wash it really fast, then make an effort to dry it with the
towels.</STEP> <STEP>Decide not to do this again. </STEP> </INSTRUCTIONS>

Note: Cover more exercises based on XML Programming theory concepts.

Semester-V

Database Management Systems (UG-G-DSE-L-501A) Credit-4

Introduction to Database Management Systems: Characteristics of database approach, datamodels,


DBMS architecture and data independence.
10L
Entity Relationship and Enhanced ER Modeling: Entity types, relationships, SQL: Schema
Definition , constraints, and object modeling.
15L
Relational Data Model: Basic concepts, relational constraints, relational algebra, SQL queries.
15L
Database design: ER and EER to relational mapping, functional dependencies, normal forms up to
third normal form.
20L

Recommended Books:
1. Henry F. Korth and Silberschatz Abraham, “Database System Concepts”, Mc.Graw Hill.
2. Elmasri Ramez and Novathe Shamkant, “Fundamentals of Database Systems”, Benjamin
Cummings Publishing. Company.
3. Ramakrishnan: Database Management System , McGraw-Hill
5. Date C. J., “Introduction to Database Management”, Vol. I, II, III, Addison Wesley.
6. Ullman JD., “Principles of Database Systems”, Galgottia Publication.

Database Management Systems Lab (UG-G-DSE-P-501A) Credit-2

The following concepts must be introduced to the students:


DDL Commands:
• Create table, alter table, drop table
DML Commands:
• Select , update, delete, insert statements
• Condition specification using Boolean and comparison operators (and, or, not,=,<>,>,<,>=,<=)
• Arithmetic operators and aggregate functions(Count, sum, avg, Min, Max)
• Multiple table queries (join on different and same tables)
• Nested select statements
• Set manipulation using (any, in, contains, all, not in, not contains, exists, not exists, union,
intersect, minus, etc.)
• Categorization using group by……..having
• Arranging using order by

Programming in Visual Basic/GAMBAS (UG-G-SEC-P-503) Credit-2

GUI Environment:
Introduction to graphical user interface (GUI), programming language (procedural,
object oriented, event driven), the GUI environment, compiling, debugging, and running the programs.
(2L)

Controls :
Introduction to controls textboxes, frames, check boxes, option buttons, images, setting borders and styles,
the shape control, the line control, working with multiple controls and their properties, designing the user
interface, keyboard access, tab controls, default & cancel property, coding for controls.
(4L)

Operations:
Data types, constants, named & intrinsic, declaring variables, scope of variables, val function, arithmetic
operations, formatting data.
(2L)

Decision Making :
If statement, comparing strings, compound conditions (and, or, not), nested if statements, case structure,
using if statements with option buttons & check boxes, displaying message in message box, testing whether
input is valid or not.
(4L)

Forms Handling :
Multiple forms creating, adding, removing forms in project, hide, show method, load, unload statement, me
keyword, referring to objects on a different forms.
(2L)

Iteration Handling:
Do/loops, for/next loops, using msgbox function, using string function.
(3L)

Book Recommended:
a.Programming in Visual Basic 6.0 by Julia Case Bradley, Anita C. Millispangh
(Tata Mcgraw Hill Edition 2000 (Fourteenth Reprint 2004)

Software Lab Based on Visual Basic:


Practical exercises based on concepts listed in theory using VB.
1. Write a VB application to compute the sum of two variables.
2. Write a VB application to compute the factorial of a number n.
3. Write a VB application to compute the Fibonacci series of a number n.
4. Write a VB application to compute the series of prime numbers till number n.
5. Write a VB application to compute the maximum of three numbers.
6. Write a VB application to compute the sum of odd numbers and even numbers in an array
of n integers.
7. Write a VB application to compare the strings.
8. Write a VB application to make a calculator.
9. Write a VB application to choose your hobbies from a list.
10. Write a VB application to illustrate the use of color radio button.
11. Write a VB application to illustrate the use of color scroll bar form.
12. Write a VB application to illustrate the use of color scroll bar label text.
13. Write a VB application to illustrate the use of color text box.
14. Write a VB application to show a timer.

Multimedia and Applications (UG-G-SEC-P-503) Credit-2

Multimedia:
Introduction to multimedia, Components, Uses of multimedia.
2L

Making Multimedia:
Stages of a multimedia project, Requirements to make good multimedia,
Multimedia Hardware - Macintosh and Windows production Platforms, Hardware peripherals -
Connections, Memory and storage devices, Multimedia software and Authoring tools.
4L

Text:
Fonts & Faces, Using Text in Multimedia, Font Editing & Design Tools, Hypermedia
&Hypertext.
2L

Images:
Still Images – Bitmaps, Vector Drawing, 3D Drawing & rendering, Natural Light &
Colors, Computerized Colors, Color Palletes, Image File Formats.
3L

Sound:
Digital Audio, MIDI Audio, MIDI vs Digital Audio, Audio File Formats. (2L)
Video: How Video Works, Analog Video, Digital Video, Video File Formats, Video Shooting
and Editing.
2L

Animation:
Principle of Animations. Animation Techniques, Animation File Formats.
2L

Books Recommended:
1. Tay Vaughan, “Multimedia: Making it work”, TMH, Eighth edition. 2006
2. Ralf Steinmetz and Klara Naharstedt, “Multimedia: Computing, Communications
Applications”, Pearson,1995.
3. Keyes, “Multimedia Handbook”, TMH. 2000.
4. K. Andleigh and K. Thakkar, “Multimedia System Design”, PHI,2000

Software Lab Based on Multimedia (FLASH as a multimedia S/W):

Practical exercises based on concepts listed in theory using Flash.

FLASH: Concept of Frame, Key frames, Frame rate, Timeline, Tween, Layers, Symbols,
Embedding audio/video and embedding on the web page
1. Draw an animation to show a bouncing ball.
2. Draw an animation to show a moving stick man.
3. Draw an animation to show a fainting banana.
4. Draw an animation to show sunrise and sunset.
5. Draw an animation to show a disappearing house.
6. Draw an animation to show two boats sailing in river
7. Draw an animation to show a scene of cricket match.
8. Draw an animation to help teach a poem or a song
9. Draw an animation to show cartoon with a message
10. Make a movie showing Shape Tweening.
11. Make a movie showing Motion Tweening.
12. Add sound and button to the movie

Semester-VI
Project Work/Dissertation (UG-G-DSE-PRO-601B) Credit-6

• This option is to be offered only in beginning of 6th Semester.


• The students will be allowed to work on any project based on the concepts studied in core/elective
or skill based elective courses.
• The group size should be maximum of three (03) students.
• Each group will be assigned a teacher as a supervisor who will handle both their theory as well lab
classes.
• A maximum of Four (04) projects would be assigned to one teacher.
• Theory classes will cover project management techniques.

MySQL Programming (using SQL/PL-SQL) (UG-G-SEC-P-604) Credit-2

SQL Vs. SQL * Plus:


SQL Commands and Data types, Operators and Expressions, Introduction to SQL * Plus.
( 2L)

Managing Tables and Data:


 Creating and Altering Tables (Including constraints)
 Data Manipulation Command like Insert, update, delete
 SELECT statement with WHERE, GROUP BY and HAVING, ORDER BY, DISTINCT,
Special operator like IN, ANY, ALL BETWEEN, EXISTS, LIKE
 Join, Built in functions
(4L)
Other Database Objects
 View
 Synonyms, Index
(2L)
Transaction Control Statements
 Commit, Rollback, Savepoint
(2L)
Introduction to PL/SQL
 SQL v/s PL/SQL
 PL/SQL Block Structure
 Language construct of PL/SQL (Variables, Basic and Composite Data type, Conditions
looping etc.)
 % TYPE and % ROWTYPE
 Using Cursor (Implicit, Explicit)
(5L)

Books Recommended:
1. Baron Schwartz , High Performance MySQL, O’Reilly, 2012.
2. Vikram Vaswani , The Complete Reference MySQL , McGraw Hill Educations, 2004.

Software Lab Based on MySQL (SQL/PL-SQL):


[SQL COMMANDS]
1) SQL* formatting commands
2) To create a table, alter and drop table.
3) To perform select, update, insert and delete operation in a table.
4) To make use of different clauses viz where, group by, having, order by, union and intersection,
5) To study different constraints.

[SQL FUNCTION]
6) To use oracle function viz aggregate, numeric, conversion, string function.
7) To understand use and working with joins.
8) To make use of transaction control statement viz rollback, commit and save point.
9) To make views of a table.
10) To make indexes of a table.

[PL/SQL]
11) To understand working with PL/SQL
12) To implement Cursor on a table.
13) To implement trigger on a table

R Programming (UG-G-SEC-P-604) Credit-2

Introduction:
Overview and History of R, Getting Help, Data Types, Subsetting, Vectorized Operations, Reading and
Writing Data.
(5L)
Control Structures, Functions, lapply, tapply, split, mapply, apply, Coding Standards.
(5L)
Scoping Rules, Debugging Tools, Simulation, R Profiler.

Reference Book
W. N. Venables, D. M. Smith, An Introduction to R, R-core team,2015
(5L)

Software Lab Based on R Programming:


1. Write a program that prints ‘Hello World’ to the screen.
2. Write a program that asks the user for a number n and prints the sum of the numbers 1 to n
3. Write a program that prints a multiplication table for numbers up to 12.
4. Write a function that returns the largest element in a list.
5. Write a function that computes the running total of a list.
6. Write a function that tests whether a string is a palindrome.
7. Implement the following sorting algorithms: Selection sort, Insertion sort, Bubble Sort
8. Implement linear search.
9. Implement binary search.
10. Implement matrices addition , subtraction and Multiplication

END

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy