Professional Documents
Culture Documents
BSC III To VI Semester Computer Science Syllabus 19 20 Onwards
BSC III To VI Semester Computer Science Syllabus 19 20 Onwards
New syllabus of BSc Computer Science Optional Subject, III, IV, V and VI semesters, w.e.f. 2019-20
and onwards
UNIT I 10Hrs
Overview of C++: Object Oriented Programming concepts, advantages, C++ program development
environment, the C++ language standards, C++ as a superset of C.
Classes & Objects: classes, structure & classes, union & classes, inline function, scope resolution operator,
static class members: static data member, static member function, passing objects to function, returning
objects, object assignment, constructors & destructors, friend function, friend classes.
UNIT II 10Hrs
References & Dynamic Allocation Operators: array of objects, pointers to object, type checking C++
pointers, the this pointer, pointer to derived types, pointer to class members, reference parameter, call by
reference and return by reference, passing references to objects, returning reference, C++’s dynamic
allocation operators, allocating objects.
UNIT IV 10Hrs
Templates and Exception Handling: Exception handling in C++, try, throw, catch sequence, multiple catch
blocks, uncaught exceptions, catch-all exception handler, Templates: Reason for templates, compactness and
flexibility, function template, class templates.
The C++ I/O System Basics: C++ Streams, the basic stream classes, c++ predefined streams, formatted I/O,
file processing.
UNIT V 10Hrs
Overview of the Standard Template Library: The Standard Template Library, Design goals, Header files,
STL components, STL Example: vectors, lists, maps, sets. Containers-Vector, Deque, List, Associative
Containers, Set, Multiset, Map, Multimap. Iterators: Input iterators, Output iterators, Forward iterators,
Backward iterators.
References:
Suggested assignments
1. Simple C++ Programs to Implement Various Control Structures. a. If statement b. Switch case
statement and do while loop c. For loop d. While loop
2. To convert from decimal to binary. Use class concept.
3. Implement function overloading in order to compute power(m,n) where i) m is double and n is int ii)
m and n are int.
4. Define a class Employee with data members data members: Employee_Number, Employee_Name,
and Employee job. Illustrate object creation using various constructors(constructor overloading).
Display the Employee details.
5. Define a class Employee with data members data members: Employee_Number, Employee_Name,
Basic, DA, IT, Net_Sal. Member Functions: To read the data, To calculate Net_Sal and To print data
membersRead the data of N employees and compute Net_Sal of each employee. (DA= 52% of Basic
and Income Tax (IT)=30% of the gross salary). Define a static member function dispCount() to
display number of objects created.
6. Using above example illustrate array of objects concepts.
7. Define a class called 'TIME' that has - three integer data members for hours, minutes and seconds -
constructor to initialize the object - member function to add two TIME objects - member function
to display time in HH:MM:SS format.
8. Define a class for Departmental store with data itemCode, itemName, itemPrice. Write a function
shoppingList() to reflect the order of a customer and perform operations like adding item to the list,
and print total order price.
9. Define a class Complex. Perform addition/subtraction/multiplication of two complex numbers using
operator overloading. The function should return the result as complex object.
10. Define a class called DATE. Accept two valid dates in the form dd/mm/yy. Implement the following
operations by overloading the operators + and -. After every operation display the results by
overloading the operator <=d2 and no_of_days is an integer. 2)d2=d1-no_of_days; where d1 is a
DATE object and no_of_days is an integer.
11. Write a C++ program to create a class called MATRIX using a two- dimensional array of integers.
Implement the following operations by overloading the operator== which checks the compatibility
of two matrices to be added and subtracted. Perform the addition and subtraction by overloading
the operators + and -. Display the result by overloading the operator <<. if(m1==m2) Then m3=m1-
m2 and m4=m1+m2 else display error.
12. Design the class hierarchy BookHardCopy; BookEBook. Include functions to add/delete book;
Implement using run-time polymorphism.
13. Write a function template to sort array of implicit types like int, float, char. It should also sort user
defined objects like strings. Use overloading operators wherever required.
14. Create class called String and implement basic string operations.
15. Reading and writing to and from the files.
Practical:
IA marks : 10
UNIT I 10Hrs
Introduction: Purpose of Database Systems, View of Data, Database Languages, Database Design, Data
Storage and Querying, Transaction Management, Database Architecture, Database Users and Administrators.
UNIT II 10Hrs
Introduction to the Relational Model: Structure of Relational Databases, Database Schema, Keys, Schema
Diagrams, Relational Query Languages, Relational Operations.
UNIT IV 08Hrs
Database Design and the E-R Model: Overview of the Design Process, The Entity-Relationship Model,
Constraints, Removing Redundant Attributes in Entity Sets, Entity-Relationship Diagrams, Reduction to
Relational Schemas, Entity-Relationship Design Issues, Extended E-R Features.
UNIT V 12Hrs
Relational Database Design: Features of Good Relational Designs, Atomic Domains and First Normal Form,
Decomposition Using Functional Dependencies, Multivalued Dependencies, More Normal Forms-2NF, 3NF,
refinement, BCNF, and 4NF, Database-Design Process, Modeling Temporal Data.
Data Storage: Magnetic Disk and Flash Storage, RAID, File Organization, Organization of Records in Files.
References:
1. Abraham Silberschatz, Henry F. and S. Sudarshan, Database System Concepts, 6th edition, Mc Graw
Hill.
2. Coronel, C. M., Morris, S. & Rob, P., Database systems: Design, implementation, and Management
(10th ed.). Boston: Cengage Learning
3. Elmasari & Navathe, Fundamentals of Database System, Pearson Education
4. Feuerstein, Oracle PL/SQL Programming, SPD/O’REILLY
5. Korth, Data Base System Concepts, TMH
6. Bipin Desai, An introduction to Database System, Galgotia Publications
7. P.S. Deshpande, SQL PL/SQL for Oracle 8 & 8i, Wiley Dreamtech
Suggested Assignments
1. Draw E-R diagram and convert entities and relationships to relation table for a given scenario.
a. Two assignments shall be carried out i.e. consider two different scenarios (eg. bank, college)
2. Write relational algebra queries for a given set of relations.
3. Perform the following:
a. Viewing all databases, Creating a Database, Viewing all Tables in a Database, Creating
Tables (With and Without Constraints), Inserting/Updating/Deleting Records in a Table,
Saving (Commit) and Undoing (rollback)
4. Perform the following:
a. Altering a Table, Dropping/Truncating/Renaming Tables, Backing up / Restoring a Database.
5. For a given set of relation schemes, create tables and perform the following
Simple Queries, Simple Queries with Aggregate functions, Queries with Aggregate functions
(group by and having clause), Queries involving- Date Functions, String Functions , Math
Functions
Join Queries- Inner Join, Outer Join
Subqueries- With IN clause, With EXISTS clause
Scheme of Examination
Practical:
IA marks : 10
UNIT I 10Hrs
Advanced C: Dynamic memory allocation and pointers in C- Declaring and initializing pointers, Pointer &
Functions, Pointer & Arrays, Pointer & Strings, Pointer& Structure, Pointer to Pointer. Static and dynamic
memory allocation. Memory allocation functions: malloc, calloc, free and realloc.
File Management in C: Defining and Opening & Closing File, Input & Output Operations on Files, Random
Access to Files,
UNIT II 12Hrs
Introduction to Data structures: Definition, Classification of data structures: primitive and non-primitive.
Operations on data structures
Search: Basic Search Techniques- sequential search, Binary search- Iterative and Recursive methods.
Sort- General Background: Definition, different types: Bubble sort, Selection sort, Merge sort, Insertion sort,
Quick sort
UNIT IV 10Hrs
Queue - Definition, Array representation of queue, Types of queue: Simple queue, circular queue, double
ended queue (deque) priority queue, operations on all types of Queues.
UNIT V 10Hrs
Linked list – Definition, components of linked list, representation of linked list, advantages and disadvantages
of linked list, Arrays versus linked list, Types of linked list: Singly linked list, doubly linked list, Circular
linked list and circular doubly linked list. Operations on singly linked list: creation, insertion, deletion, search
and display. Implementation of stack and queues using linked list.
References
1. A. K. Sharma, Data Structures Using C, 2nd edition, Pearson Education.
2. Achuthsankar S. Nair, T. Makhalekshmi, Data Structures in C, PHI.
3. Mark Allen Weiss, Data Structures and Algorithm Analysis in C, Pearson Education.
4. Samanta. D., Classic Data Structures, Prentice Hall
5. Richard F. Gilberg, Behrouz A. Forouzan, Data structures-A Pseudocode Approach with C, Thomson
Learning.
6. A. M. Tenenbaum, Y, Langsam, M. J. Augustein, R. L. Kruse, B. P. Leung and C. L. Tondo, Data
Structures using C, PHI.
7. Trembley, An introduction to Data Structures with applications, Tata McGraw Hill.
UNIT I 10Hrs
History of Java, features of Java, JDK Environment, Java Virtual Machine, Java Runtime environment.
Identifiers and Keywords, data types, variables, Java coding Conventions, expressions, control structures,
decision making statements, Arrays and its methods, Garbage collection & finalize() method.
UNIT II 12Hrs
Java classes, define class with instance variables and methods, object creation, accessing member of class,
argument passing, Constructors, Method overloading, static data, static methods, static blocks, this
keyword, Nested & Inner classes, Wrapper Classes, String (String Arrays, String Methods, StringBuffer,
StringBuilderr)
UNIT IV 10Hrs
Exception handling: Types of Exceptions, try, catch, finally, throw, throws keywords, creating your own
exception, nested try blocks, multiple catch statements, user defined exceptions.
Java Input Output: Java IO package, File, Class Byte/Character Stream, Buffered reader / writer, File reader /
writer Print writer File Sequential / Random Serialization and de serialization.
UNIT V 10Hrs
Multithreading:Multithreading Concept,Java thread model, Main thread, creating a thread, creating multiple
threads, using is Alive() and join(), thread priorities, synchronization, Inter-thread communication,
suspending, resuming and stopping threads, using multithreading
References:
1. Herbert Schildt, The Java 2 : Complete Reference, Fourth edition, TMH,
2. Balaguruswamy, Programming with JAVAA primer, 4th Edition, TATA McGraw-Hill.
3. Cay S Horstmann, Fary Cornell, Core Java 2, Volume – I, Sun Microsystems Press
4. https://docs.oracle.com/javase/tutorial/
Additional Reading:
1. Write a C program to demonstrate the Dynamic Memory Allocation for Structure by reading and
printing n student details.
2. Write a C program to read a one dimensional array, print sum of all elements along with inputted
array elements using Dynamic Memory Allocation.
3. Write a C program to add two matrices using pointer to an array concept.
4. Write a program to sort array of integers using array of pointers concept.
5. Write a function that accepts pointer to an array and sorts array of integers.
6. Write a program that takes a file as an argument and counts the total number of lines. Lines are
defined as ending with a newline character. Program usage should be count filename.txt and the
output should be the line count.
7. Write a C program to read a text file and convert the file contents in capital (upper-case) and
write the contents in an output file.
8. Write a C program to find n Fibonacci numbers using recursion.
9. Write a C program to find factorial of any number using recursion.
10. Write a C program to search for an element in an array using Sequential search
11. Write a C program to search for an element in an array using Binary search
12. Write a C program to sort a list of N elements using Bubble sort Technique
13. Write a C program to sort a list of N elements using Merge sort Technique
14. Write a C program to sort a list of N elements using Quick sort Technique
15. Write a C program to sort a list of N elements using Insertion sort Technique
16. Write a C program to demonstrate the working of stack of size N using an array. The elements of the
stack may assume to be of type integer or real, the operations to be supported are 1. PUSH 2. POP 3.
DISPLAY. The program should print appropriate messages for STACK overflow, Under flow and
empty, use separate functions to detect these cases
17. Write a C program to convert a given infix expression into its postfix Equivalent, Implement the
stack using an array.
18. Write a C program to simulate the working of an ordinary Queue using an array. Provide the
operations QINSERT, QDELETE and QDISPLAY. Check the Queue status for empty and full.
19. Using dynamic variables and pointers Write a C program to construct a singly linked list consisting
of the following information in each node; Roll – No (Integer), Name (Character string). The
operations to be supported are :
1. LINSERT Inserting a node in the front of the list
2. LDELETE Deleting the node based on Roll – No
3. LSEARCH Searching a node based on Roll-No
4. LDISPLAY displaying all the nodes in the list
20. Write a C program to implement stack using linked list.
Students are encouraged to use Linux-Open Source OS for executing java –programs using javac compiler
available in Linux.
1. Write a Java program to find sum and average of n integer numbers.
2. Write a Java program to perform matrix multiplication.
3. Write a Java program to find GCD and LCM of two numbers (GCD is calculated using Euclidean
Algorithm. LCM is found using factorization method.).
4. Write a Java program to search an element using binary search.
5. Write a Java program to count the frequency of words, characters in the given line of text.
6. Write a Java program that creates an object and initializes its data members using constructor. Use
constructor overloading concept.
7. Write a Java Program to implement Wrapper classes and their methods.
8. Write a Java Program to illustrate function overloading concept.
9. Write a Java program implement basic queue operations using class concept.
10. Write a Java program implement basic stack operations using class concept.
11. Write a Java Program to implement inheritance and demonstrate use of method overriding(example:
Bank account/Employee)
12. Write a program to demonstrate use of user defined package by importing the package and access the
member variable of classes contained in the package..
13. Write a program to demonstrate use of interfaces for two different classes. Interface should also include
contants along with function prototypes.
14. Write a java program to implement exception handling using multiple catch statements. Also include
code to identify the significance of finally block in handling exceptions.
15. Write a java program to implement the concept of Exception Handling by creating user defined
exceptions
16. Illustrate creation of thread by extending Thread class/ implementing runnable interface
17. Write a java program to illustrate thread join.
18. Write a java program to illustrate thread priorities.
IA marks/Record book : 20
Practical Exam. Marks : 80
i) Writing Two programs : 40 marks (20 each)
ii) Execution of One program : 20 marks
iii) viva-voce : 20 marks
UNIT I 08Hrs
The World Wide Web: Introduction to world wide Web, Web Pages and Contents, Web Clients, Web
Servers, Web Applications, Websites – Home Pages: Web Site Development ; How to Builds Web Sites? ,
Web Content Authoring, Web Graphics Design, Web Programming.
What is a scripting language? Motivation for and applications of scripting, How scripting languages differ
from non-scripting languages, Types of scripting languages.
UNIT II 10Hrs
Web Design:
Origins and evolution of HTML and XHTML, Basic syntax, Standard XHTML document structure, Basic
text markup, Images, Hypertext Links, Lists, Tables, Forms, Frames, Syntactic
differences between HTML and XHTML.Overview and features of HTML5.
CSS: Introduction, Levels of style sheets, Style specification formats, Selector forms, Property value forms,
Font properties, List properties, Color, Alignment of text, The Box model, Background images, The <span>
and <div> tags, Conflict resolution.Overview and features of CSS3.
UNIT IV 12Hrs
Java Script and HTML Documents, Dynamic Documents with JavaScript. The Document Object Model;
Element access in JavaScript; Events and event handling; Handling events from the Body elements, Button
elements, Text box and Password elements; The DOM 2 event model; The navigator object; DOM tree
traversal and modification.
Introduction to dynamic documents; Positioning elements; Moving elements; Element visibility; Changing
colors and fonts; Dynamic content; Stacking elements; Locating the mouse cursor; Reacting to a mouse click;
Slow movement of elements; Dragging and dropping elements.
XML: Introduction to XML, Anatomy of an XML, document, Creating XML Documents, Creating XML
DTDs, XML Schemas, XSL, XML processors, Web services.
UNIT V 10Hrs
PHP : Why PHP and MySQL?, Server-side web scripting, Installing PHP, Adding PHP to HTML, Syntax
and Variables, Passing information between pages, Strings, Arrays and Array Functions, Numbers, Basic
PHP errors / problems. PHP/MySQL Functions, Displaying queries in tables, Building Forms from queries,
String and Regular Expressions, Sessions, Cookies and HTTP, Type and Type Conversions.
References:
Additional Reading:
6. Steven M. Schafer, HTML, CSS, JavaScript, Perl, Python and PHP - Web standards Programmer‘s
Reference‖, Wiley Publishing, Inc..
7. Thomas A. Powell, The Complete Reference HTML & XHTML, Tata McGraw Hill.
8. Learn To Build With PHP: A Crash Course (free ebook:
http://www.makeuseof.com/pages/learnbuild-php-crash-course )
9. https://stackoverflow.com/documentation
10. W3Schools: PHP (http://www.w3schools.com/php/ )
11. PHP Language Reference (http://php.net/manual/en/langref.php)
12. W3Schools: JavaScript(https://www.w3schools.com/js/default.asp )
UNIT I 08Hrs
Introduction: Data Communications, Networks, the internet, protocols and standards, network models – OSI
model, TCP/IP protocol suite, addressing.
UNIT II 10Hrs
Data and Signals: Periodic analog signals, digital signals, transmission impairment, data rate limits,
performance.
Digital transmission: Digital to digital conversion, analog-to-digital conversion, transmission modes.
UNIT IV 12Hrs
Switching: Circuit-switched networks, datagram networks, virtual-circuit networks, structure of a switch.
Telephone networks, dialup modems, digital subscriber line, cable-tv networks
Detection and Correction: Errors, redundancy, detection versus correction, block coding, linear block codes,
cyclic codes, checksum.
UNIT V 12Hrs
Data Link Control: Framing, flow and error control, noiseless and noisy channels, HDLC, point-to-point
control.
Multiple Access: Random access ALOHA, controlled access, channelization.
13 |BSc Computer Science Optional Subject Syllabus (III-VI semester)
Wired LANs-Ethernet, Wireless LANs. Connecting LANs, Backbone Networks, and Virtual LANs
References:
Additional Reading
I. Web Programming
1. Write a HTML code to demonstrate various formatting tags, ordered and unordered list, and table
using frames suitably.
2. Write HTML/Java scripts to display your CV in navigator, your Institute website, Department
Website and Tutorial website for specific subject.
3. Develop and demonstrate a XHTML document that illustrates the use external style sheet, ordered
list, table, borders, padding, color, and the <span> tag.
4. Create a HTML form containing Textboxes to enter name of student, roll number, course, and grade
obtained. When the form runs in the Browser fill the textboxes with data. Write JavaScript code that
verifies that all textboxes has been filled. If a textboxes has been left empty, popup an alert indicating
which textbox has been left empty.
5. Develop and demonstrate a XHTML file that includes JavaScript script for receiving a number n as
input and outputting first n Fibonacci numbers..
6. Write a JavaScript code to compute the sum of n natural numbers.
7. Create a HTML form containing textbox to enter text. Write a JavaScript code block, which checks
the contents entered in a form’s Text element. If the text entered is in the lower case, convert to upper
case. Make use of function to Uppercase ( ).
8. Design an XML document to store information about an Employee viz. Name, EmpId, Job, Department
and position. Make up sample data for 3 employees. Create a CSS style sheet and use it to display the
document
9. Create a XHTML form with Name, Address Line 1, Address Line 2, and E-mail text fields. On
submitting, store the values in MySQL table. Retrieve and display the data based on Name.
IA marks/Record book : 20
Practical Exam. Marks : 80
i) Writing Two programs : 40 marks (20 each)
ii) Execution of One program : 20 marks
iii) viva-voce : 20 marks