SPPU SE Computer Engineering 2015 Pattern Course Syllabus
SPPU SE Computer Engineering 2015 Pattern Course Syllabus
SPPU SE Computer Engineering 2015 Pattern Course Syllabus
2) To prepare the graduates to work as a committed professional with strong professional ethics and
values, sense of responsibilities, understanding of legal, safety, health, societal, cultural and
environmental issues.
3) To prepare committed and motivated graduates with research attitude, lifelong learning,
investigative approach, and multidisciplinary thinking.
4) To prepare the graduates with strong managerial and communication skills to work effectively as
individual as well as in teams.
Program Outcomes-
Students are expected to know and be able -
Abbreviations:
Course Outcomes:
On completion of the course, student will be able to–
Solve real world problems logically using appropriate set, function, and relation models
and interpret the associated operations and terminologies in context.
Analyze and synthesize the real world problems using discrete mathematics.
Course Contents
Books:
Text:
1. Kenneth H. Rosen, Discrete Mathematics and its Applications, Tata McGraw-Hill, ISBN
978-0-07-288008-3, 7th Edition.
2. C L Liu, Elements of Discrete Mathematics, Tata McGraw-Hill, ISBN 10:0-07-066913-9.
Reference:
1. Bernard Kolman, Robert C. Busby and Sharon Ross, Discrete Mathematical Structures,
Prentice-Hall of India /Pearson, ISBN: 0132078457, 9780132078450.
2. N. Biggs, ―Discrete Mathematics‖, 3rd Edition, Oxford University Press, ISBN 0 –19
850717 – 8.
3. Narsingh Deo, ―Graph with application to Engineering and Computer Science‖, Prentice
Hall of India, 1990, 0 – 87692 – 145 – 4.
4. Dr. K. D. Joshi, Foundations of Discrete Mathematics, New Age International Limited,
Publishers, January 1996, ISBN: 8122408265, 9788122408263
5. Eric Gossett, ―Discrete Mathematical Structures with Proofs‖, Wiley India Ltd,
ISBN:978-81-265-2758-8.
6. Sriram P & Steven S., ―Computational Discrete Mathematics‖, Cambridge University
Press, ISBN 13: 978-0-521-73311-3.
Reference:
1. John Yarbrough, ―Digital Logic applications and Design‖, Cengage Learning, ISBN – 13:
978-81-315-0058-3
2. D. Leach, Malvino, Saha, ―Digital Principles and Applications‖, Tata McGraw Hill, ISBN
– 13:978-0-07-014170-4.
3. Anil Maini, ―Digital Electronics: Principles and Integrated Circuits‖, Wiley India Ltd,
ISBN:978-81-265-1466-3.
4. Norman B & Bradley, ―Digital Logic Design Principles, Wiley India Ltd, ISBN:978-81-
265-1258-4.
5. Scott Mackenzie, ―The 8051 Microcontroller‖, Prentice Hall India, ISBN-13: 978-
0130195623
Concept, Queue as Abstract Data Type, Realization of Queues Using Arrays , Circular Queue,
Advantages of using circular queues, Multi-queues, Deque, Priority Queue, Array implementation of
priority queue, Linked Queue and operations.
Case study- Priority queue in bandwidth management
Searching- Search Techniques, Sequential search, variant of sequential search- sentinel search, Binary
search, Fibonacci search.
Case Study- Use of Fibonacci search in non-uniform access memory storage and in Optimization of
Unimodal Functions.
Sorting- Types of sorting-Internal and external sorting, General sort concepts-sort order, stability,
efficiency, number of passes, Sorting methods- Bubble sort, Insertion sort, Selection sort, Quick sort,
Heap sort, Shell sort, Bucket sort, Radix sort, Comparison of All Sorting Methods.
Case Study- Timsort is a hybrid stable sorting algorithm.
Books:
Text:
1. Brassard & Bratley, ―Fundamentals of Algorithmics‖, Prentice Hall India/Pearson
Education, ISBN 13-9788120311312.
2. Horowitz and Sahani, ―Fundamentals of Data Structures in C++‖, University Press, ISBN
10: 0716782928 ISBN 13: 9780716782926.
3. Goodrich, Tamassia, Goldwasser, ―Data Structures and Algorithms in C++‖, Wiley
publication, ISBN-978-81-265-1260-7
Reference:
1. R. Gillberg, B. Forouzn, ―Data Structures: A Pseudo code approach with C‖, Cenage
Learning, ISBN 9788131503140.
2. Horowitz, Sahani and Rajshekaran, ―Fundamentals of Computer Algorithms‖, University
Press, ISBN-13, 9788175152571.
3. Yedidyah Langsam, Moshe J Augenstein, Aron M Tenenbaum, ―Data Structures using C
and C++‖, Pearson Education, ISBN 81-317-0328-2.
4. A Michael Berman, ―Data Structures via C++: Objects by Evolution‖, Oxford University
Press, ISBN:0-19-510843-4.
5. M. Weiss, ―Data Structures and Algorithm Analysis in C++‖, 2nd edition, Pearson
Education, 2002, ISBN-81-7808-670-0.
Course Outcomes:
On completion of the course, student will be able to–
Demonstrate computer architecture concepts related to design of modern processors,
memories and I/Os
Analyze the principles of computer architecture using examples drawn from commercially
available computers
Evaluate various design alternatives in processor organization
Course Contents
Books:
Text:
1. W. Stallings, ―Computer Organization and Architecture: Designing for performance‖,
Pearson Education/ Prentice Hall of India, 2003, ISBN 978-93-325-1870-4, 7th Edition.
2. Zaky S, Hamacher, ―Computer Organization‖, 5th Edition, McGraw-Hill Publications,
2001, ISBN- 978-1-25-900537-5, 5th Edition.
Reference:
Course Objectives:
To explore the principles of Object Oriented Programming (OOP).
To understand object-oriented concepts such as data abstraction, encapsulation,
inheritance, dynamic binding, and polymorphism.
To use the object-oriented paradigm in program design.
To lay a foundation for advanced programming.
Provide programming insight using OOP constructs.
Course Outcomes:
On completion of the course, student will be able to–
Analyze the strengths of object oriented programming
Design and apply OOP principles for effective programming
Develop programming application using object oriented programming language C++
Percept the utility and applicability of OOP
Course Contents
Unit I Classes and Objects 08 Hours
Need of Object-Oriented Programming (OOP), Object Oriented Programming Paradigm, Basic
Concepts of Object-Oriented Programming, Benefits of OOP, C++ as object oriented
programming language.
C++ Programming- C++ programming Basics, Data Types, Structures, Enumerations, control
structures, Arrays and Strings, Class, Object, class and data abstraction, class scope and accessing
class members, separating interface from implementation, controlling access to members.
Functions- Function, function prototype, accessing function and utility function, Constructors and
destructors, Copy Constructor, Objects and Memory requirements, Static Class members, data
abstraction and information hiding, inline function.
Data hierarchy, Stream and files, Stream Classes, Stream Errors, Disk File I/O with Streams, File
Pointers, and Error Handling in File I/O, File I/O with Member Functions, Overloading the
Extraction and Insertion Operators, memory as a Stream Object, Command-Line Arguments,
Printer output, Early vs. Late Binding.
Introduction to STL, Containers, algorithms and iterators, Containers- Sequence container and
associative containers, container adapters, Algorithms- basic searching and sorting algorithms,
min-max algorithm, set operations, heap sort, Iterators- input, output, forward, bidirectional and
random access. Object Oriented Programming – a road map to future
Books:
Text:
1. Bjarne Stroustrup, ―The C++ Programming language‖, Third edition, Pearson Education.
ISBN 9780201889543.
2. Deitel, ―C++ How to Program‖, 4th Edition, Pearson Education, ISBN:81-297-0276-2
Reference:
1. Robert Lafore, ―Object-Oriented Programming in C++‖, fourth edition, Sams Publishing,
ISBN:0672323087 (ISBN 13: 9780672323089)
2. Herbert Schildt, ―C++ The complete reference‖, Eighth Edition, McGraw Hill
Professional, 2011, ISBN:978-00-72226805
3. Matt Weisfeld, ―The Object-Oriented Thought Process‖, Third Edition Pearson ISBN-
13:075-2063330166
4. Cox Brad, Andrew J. Novobilski, ―Object –Oriented Programming: An Evolutionary
Approach‖, Second Edition, Addison–Wesley, ISBN:13:978-020-1548341
Group A
1. In In Second year Computer Engineering class of M students, set A of students play cricket and
set B of students play badminton. Write C/C++ program to find and display-
i. Set of students who play either cricket or badminton or both
ii. Set of students who play both cricket and badminton
iii. Set of students who play only cricket
iv. Set of students who play only badminton
v. Number of students who play neither cricket nor badminton
(Note- While realizing the set duplicate entries are to avoided)
2. Write C/C++ program to store marks scored for first test of subject 'Data Structures and
Algorithms' for N students. Compute
I. The average score of class
ii. Highest score and lowest score of class
iii. Marks scored by most of the students
iv. list of students who were absent for the test
3. Department library has N books. Write C/C++ program to store the cost of books in array in
ascending order. Books are to be arranged in descending order of their cost. Write function
for
a) Reverse the contents of array without using temporary array.
b) Copy costs of books those with cost less than 500 in new array
c) Delete the duplicate entries using temporary array
d) Delete duplicate entries without using temporary array
e) Count number of books with cost more than 500.
4. Set A=(1,3, a, s, t, i} represent alphanumeric characters permitted to set the password of
length 4. Write C/C++ program to generate all possible passwords.
5. A magazine committee is to be formed that consists of any 3 members to be selected from
{ Nikhita, Aboli, Megha, Sanika, Pratik, Saurabh}. Write C/C++ program to list all possible
committees.
6. It is decided that weekly greetings are to be furnished to wish the students having their
birthdays in that week. The consolidated sorted list with desired categorical information is
to be provided to the authority. Write C++ program for array of structures to store students
PRNs with date and month of birth. Let Array_A and Array_B be the two arrays for two SE
Computer divisions. Arrays are sorted on date and month. Merge these two arrays into third
array Array_SE_Comp_DOB resulting in sorted information about Date of Birth of SE
Computer students.
7. A magic square is an n * n matrix of the integers 1 to n2 such that the sum of each row,
column, and diagonal is the same. The figure given below is an example of magic square for
case n=5. In this example, the common sum is 65. Write C/C++ Program for magic square.
15 8 1 24 17
16 14 7 5 23
22 20 13 6 4
3 21 19 12 10
9 2 25 18 11
8. An m x n matrix is said to have a saddle point if some entry a[i][j] is the smallest value in
row i and the largest value in j. Write C/ C++ function that determines the location of a
saddle point if one exists.
9. Write C/C++ program for storing matrix. Write functions for
a) Check whether given matrix is upper triangular or not
b) Compute summation of diagonal elements
c) Compute transpose of matrix
d) Add, subtract and multiply two matrices
10. Write C++ program with class for String. Write a function
frequency that determines the frequency of occurrence of particular character in the
string.
delete that accepts two integers, start and length. The function computes a new string
that is equivalent to the original string, except that length characters being at start have
been removed.
chardelete that accepts a character c. The function returns the string with all occurrences
of c removed.
replace to make an in-place replacement of a substring w of a string by the string x. note
that w may not be of same size of x
palindrome to check whether given string is palindrome or not
11. Write C++ program for sparse matrix realization and operations on it- Transpose, Fast
Transpose and addition of two matrices
12. Write C++ program for string operations- copy, concatenate, check substring, equal, reverse
and length
13. Write a C++ program to realize polynomial equation and perform operations. Write function
a) To input and output polynomials represented as bmxem+ bm-1xem-1 +….. +b0xe0.
Your functions should overload the << and >> operators.
1. b) Evaluates a polynomial at given value of x
2. c) Add two polynomials
3. d) Multiplies two polynomials
Group B
14. Department of Computer Engineering has student's club named 'Pinnacle Club'. Students of
Second, third and final year of department can be granted membership on request. Similarly
one may cancel the membership of club. First node is reserved for president of club and last
node is reserved for secretary of club. Write C++ program to maintain club member‘s
information using singly linked list. Store student PRN and Name. Write functions to
a) Add and delete the members as well as president or even secretary.
b) Compute total number of members of club
c) Display members
d) Display list in reverse order using recursion
e) Two linked lists exists for two divisions. Concatenate two lists.
15. The ticket booking system of Cinemax theater has to be implemented using C++ program.
There are 10 rows and 7 seats in each row. Doubly circular linked list has to be maintained
to keep track of free seats at rows. Assume some random booking to start with. Use array to
store pointers (Head pointer) to each row. On demand
a) The list of available seats is to be displayed
b) The seats are to be booked
c) The booking can be cancelled.
16. Write C++ program for storing appointment schedule for day. Appointments are booked
randomly using linked list. Set start and end time and min and max duration for visit slot.
Write functions for-
a) Display free slots
b) Book appointment
c) Cancel appointment ( check validity, time bounds, availability etc)
d) Sort list based on time
e) Sort list based on time using pointer manipulation
17. Second year Computer Engineering class, set A of students like Vanilla Ice-cream and set B
of students like butterscotch ice-cream. Write C/C++ program to store two sets using linked
list. compute and display-
vi. Set of students who like either vanilla or butterscotch or both
vii. Set of students who like both vanilla and butterscotch
viii. Set of students who like only vanilla not butterscotch
ix. Set of students who like only butterscotch not vanilla
x. Number of students who like neither vanilla nor butterscotch
18. Write C++ program to store set of negative and positive numbers using linked list. Write
functions
a) Insert numbers
b) Delete nodes with negative numbers
c) To create two more linked lists using this list, one containing all positive numbers
and other containing negative numbers
d) For two lists that are sorted; Merge these two lists into third resultant list that is
sorted
19. Write C++ program for storing binary number using doubly linked lists. Write functions
a) to compute 1‘s and 2‘s complement
b) add two binary numbers
20. Let x = (x1,x2, … , xn) and y = (y 1, y2,…. , ym) be two doubly linked lists. Assume that in
each linked list, the nodes are in non-decreasing order of their data-field values. Write an
C/C++ program to merge the two lists to obtain a new linked list z in which the nodes are
also in this order. Following the merge, x and y should represent empty lists because each
node initially in x or y is now in z. No additional nodes may be used.
Syllabus for Second Year of Computer Engineering #22/68
Faculty of Engineering Savitribai Phule Pune University, Pune
21. Design a linked allocation system to represent and manipulate univariate polynomials with
integer coefficients (use circular linked lists with head nodes). Each term of the polynomial
will be represented as a node Thus. a node in this system will have three data members as
below:
Exponent Link
Coefficient
Group C
23. A palindrome is a string of character that‘s the same forward and backward. Typically,
punctuation, capitalization, and spaces are ignored. For example, ‖Poor Dan is in a droop‖ is
a palindrome, as can be seen by examining the characters ―poor danisina droop‖ and
observing that they are the same forward and backward. One way to check for a
palindrome is to reverse the characters in the string and then compare with them the
original-in a palindrome, the sequence will be identical. Write C++ program with functions-
1. to check whether given string is palindrome or not that uses a stack to determine
whether a string is a palindrome.
2. to remove spaces and punctuation in string, convert all the Characters to lowercase,
and then call above Palindrome checking function to check for a palindrome
3. to print string in reverse order using stack
24. In any language program mostly syntax error occurs due to unbalancing delimiter such as
(),{},[]. Write C++ program using stack to check whether given expression is well
parenthesized or not.
25. Implement C++ program for expression conversion as infix to postfix and its evaluation
using stack based on given conditions
i. Operands and operator, both must be single character.
ii. Input Postfix expression must be in a desired format.
iii. Only '+', '-', '*' and '/ ' operators are expected.
26. Implement C++ program for expression conversion-
a) infix to prefix, b)prefix to postfix,
c) prefix to infix, d) postfix to infix and e) postfix to prefix.
27. A classic problem that can be solved by backtracking is called the Eight Queens problem,
which comes from the game of chess. The chess board consist of 64 square arranged in an
8 by 8 grid. The board normally alternates between black and white square, but this is not
relevant for the present problem. The queen can move as far as she wants in any direction,
as long as she follows a straight line, Vertically, horizontally, or diagonally. Write C++
program with recursive function for generating all possible configurations for 4-queen's
problem.
Group D
28. Queues are frequently used in computer programming, and a typical example is the creation
of a job queue by an operating system. If the operating system does not use priorities, then
the jobs are processed in the order they enter the system. Write C++ program for simulating
job queue. Write functions to add job and delete job from queue.
29. Write program to implement a priority queue in C++ using an inorder List to store the items
in the queue. Create a class that includes the data items(which should be template) and the
priority (which should be int)The inorder list should contain these objects ,with operator <=
overloaded so that the items with highest priority appear at the beginning of the list (which
will make it relatively easy to retrieve the highest item.)
30. A double-ended queue(deque) is a linear list in which additions and deletions may be made
at either end. Obtain a data representation mapping a deque into a one-dimensional array.
Write C++ program to simulate deque with functions to add and delete elements from either
end of the deque.
31. Pizza parlor accepting maximum M orders. Orders are served in first come first served
basis. Order once placed can not be cancelled. Write C++ program to simulate the system
using circular queue using array.
Group E
32. a) Write C++ program to store roll numbers of student in array who attended training
program in random order. Write function for searching whether particular student
attended training program or not using linear search and sentinel search.
b) Write C++ program to store roll numbers of student array who attended training
program in sorted order. Write function for searching whether particular student
attended training program or not using binary search and Fibonacci search.
33. a) Write C++ program to store names and mobile numbers of your friends in sorted order
on names. Search your friend from list using binary search (recursive and non
recursive). Insert friend if not present in phonebook.
b) Write C++ program to store names and mobile numbers of your friends in sorted order
on names. Search your friend from list using Fibonacci search. Insert friend if not
present in phonebook.
c) Write C++ program to maintain club members, sort on roll numbers in ascending order.
Write function ‗Ternary_Search‘ to search whether particular student is member of club or
not. Ternary search is modified binary search that divides array into 3 halves instead of
two.
Syllabus for Second Year of Computer Engineering #24/68
Faculty of Engineering Savitribai Phule Pune University, Pune
d) Write C++ program to store first year percentage of students in array. Write function for
sorting array of floating point numbers in ascending order using
a) Selection Sort
b) Bubble sort and display top five scores.
e) Write C++ program to store second year percentage of students in array. Write function for
sorting array of floating point numbers in ascending order using
a) Insertion sort
b) Shell Sort and display top five scores.
f) Write C++ program to store first year percentage of students in array. Write function for
sorting array of floating point numbers in ascending order using quick sort and display top
five scores.
g) Write C++ program to store XIIth percentage of students in array. Write function for sorting
array of floating point numbers in ascending order using bucket sort and display top five
scores..
h) Write C++ program to store Xth percentage of students in array. Write function for sorting
array of floating point numbers in ascending order using radix sort and display top five
scores.
Compulsory Assignment
Install, Configure 64 bit Linux Operating Systems, study basic architecture, memory
1.
system, and learn basic administration.
Group A
Implement a class Complex which represents the Complex Number data type. Implement
the following operations:
1. Constructor (including a default constructor which creates the complex number 0+0i).
2.
2. Overloaded operator+ to add two complex numbers.
3. Overloaded operator* to multiply two complex numbers.
4. Overloaded << and >> to print and read Complex Numbers.
Implement a class Quadratic that represents degree two polynomials i.e., polynomials of
type ax2+bx+c. The class will require three data members corresponding to a, b and c.
Implement the following operations:
1. A constructor (including a default constructor which creates the 0 polynomial).
3. 2. Overloaded operator+ to add two polynomials of degree 2.
3. Overloaded << and >> to print and read polynomials. To do this, you will need
to decide what you want your input and output format to look like.
4. A function eval that computes the value of a polynomial for a given value of x.
5. A function that computes the two solutions of the equation ax2+bx+c=0.
Implement a class CppArray which is identical to a one-dimensional C++ array (i.e., the
index set is a set of consecutive integers starting at 0) except for the following :
1. It performs range checking.
4. 2. It allows one to be assigned to another array through the use of the assignment
operator (e.g. cp1= cp2)
3. It supports a function that returns the size of the array.
4. It allows the reading or printing of array through the use of cout and cin.
Write a C++ program create a calculator for an arithmetic operator (+, -, *, /). The
program should take two operands from user and performs the operation on those two
operands depending upon the operator entered by user. Use a switch statement to select the
operation. Finally, display the result.
Some sample interaction with the program might look like this:
5. Enter first number, operator, second number: 10 / 3
Answer = 3.333333
Do another (y/n)? y
Enter first number, operator, second number: 12 + 100
Answer = 112
Do another (y/n)? n
Develop an object oriented program in C++ to create a database of student information
system containing the following information: Name, Roll number, Class, division, Date of
Birth, Blood group, Contact address, telephone number, driving licence no. etc Construct
6. the database with suitable member functions for initializing and destroying the data viz
constructor, default constructor, Copy constructor, destructor, static member functions,
friend class, this pointer, inline code and dynamic memory allocation operators-new and
delete.
Create a class template to represent a generic vector. Include following member functions:
To create the vector.
7. To modify the value of a given element
To multiply by a scalar value
To display the vector in the form (10,20,30,…)
Create a class Rational Number (fractions) with the following capabilities:
a) Create a constructor that prevents a 0 denominator in a fraction, reduces or simplifies
8. fractions that are not in reduced form and avoids negative denominators.
b) Overload the addition, subtraction, multiplication and division operators for this class.
c) Overload the relational and equality operators for this class.
Imagine a publishing company which does marketing for book and audiocassette versions.
Create a class publication that stores the title (a string) and price (type float) of a
publication. From this class derive two classes: book, which adds a page count (type int),
9. and tape, which adds a playing time in minutes (type float).
Write a program that instantiates the book and tape classes, allows user to enter data and
displays the data members. If an exception is caught, replace all the data member values
with zero values.
Write a function in C++ to count and display the number of lines not starting with
alphabet 'A' present in a text file "STORY.TXT".
Example:
If the file "STORY.TXT" contains the following lines,
The roses are red.
10.
A girl is playing there.
There is a playground.
An aeroplane is in the sky.
Numbers are not allowed in the password.
The function should display the output as 3.
Write C++ Program with base class convert declares two variables, val1 and val2, which
hold the initial and converted values, respectively. It also defines the functions getinit( )
and getconv( ), which return the initial value and the converted value. These elements of
11. convert are fixed and applicable to all derived classes that will inherit convert. However,
the function that will actually perform the conversion, compute( ), is a pure virtual
function that must be defined by the classes derived from convert. The specific nature of
compute( ) will be determined by what type of conversion is taking place.
A book shop maintains the inventory of books that are being sold at the shop. The list
includes details such as author, title, price, publisher and stock position. Whenever a
customer wants a book, the sales person inputs the title and author and the system searches
the list and displays whether it is available or not. If it is not, an appropriate message is
displayed. If it is, then the system displays the book details and requests for the number of
12. copies required. If the requested copies book details and requests for the number of copies
required. If the requested copies are available, the total cost of the requested copies is
displayed; otherwise the message ―Required copies not in stock‖ is displayed. Design a
system using a class called books with suitable member functions and Constructors. Use
new operator in constructors to allocate memory space required. Implement C++ program
for the system.
Create employee bio-data using following classes i) Personal record ii))Professional record
13.
iii) Academic record Assume appropriate data members and member function to accept
required data & print bio-data. Create bio-data using multiple inheritance using C++.
Group B
Crete User defined exception to check the following conditions and throw the exception if the
criterion does not met.
a. User has age between 18 and 55
b. User stays has income between Rs. 50,000 – Rs. 1,00,000 per month
14.
c. User stays in Pune/ Mumbai/ Bangalore / Chennai
d. User has 4-wheeler
Accept age, Income, City, Vehicle from the user and check for the conditions mentioned
above. If any of the condition not met then throw the exception.
Write a menu driven program that will create a data file containing the list of telephone
numbers in the following form
John 23456
Ahmed 9876
……….. ………
15.
Use a class object to store each set of data, access the file created and implement the following
tasks
I. Determine the telephone number of specified person
II. Determine the name if telephone number is known
III. Update the telephone number, whenever there is a change.
Write a C++ program that creates an output file, writes information to it, closes the file and
16.
open it again as an input file and read the information from the file.
Write a C++ program using command line arguments to search for a word in a file and replace
17. it with the specified word. The usage of the program is shown below.
$ change <old word> <new word> <file name>
Using standard template library (STL) list container implement following member functions
18. of list class:
empty, insert, merge, reverse, sort, Unique, using iterator
Write a function template selection Sort. Write a program that inputs, sorts and outputs an int
19.
array and a float array.
You are the owner of a hardware store and need to keep an inventory that can tell you what
different tools you have, how many of each you have on hand and the cost of each one. Write
a program that initializes the random-access file hardware.dat to 100 empty records, lets you
input the data concerning each tool, enables you to list all your tools, lets you delete a record
for a tool that you no longer have and lets you update any information in the file. The tool
identification number should be the record number. Use the following information to start
20. your file:
Record # Tool name Quantity Cost
3 Electric sander 7 57.98
17 Hammer 76 11.99
24 Jig saw 21 11.00
39 Lawn mower 3 79.50
56 Power saw 18 99.99
Group C
21. Design and develop the Tic-Tac-Toe Game using C++
Develop a Supermarket Billing System using C++. The key features of this application are
listed below :
Bill Report : It shows the bill report of all the items added in supermarket billing
system.
Add, Remove or Edit items: With this feature one can add, remove and modify item
22.
details. In add items, one can add information or details such as item no., item name,
manufacturing date, price, quantity, tax percent, and many more.
Show item details: This feature allows users to see the items and the corresponding
details given for the item while adding the item.
Use file to store the data.
Design an E-mail Verifier which accepts the email address from the user. Depending upon the
23. input given by user display appropriate results. Use the following concepts in the Project –
Constructor, Destructor, new, delete, exceptional handling, string handling functions, etc.
24. Design and Develop Library Management system using OOP Concepts.
Course Objectives:
To encourage the all round development of students by focusing on soft skills.
To make the engineering students aware of the importance, the role and the content of soft
skills through instruction, knowledge acquisition, demonstration and practice.
To develop and nurture the soft skills of the students through individual and group
activities.
To expose students to right attitudinal and behavioral aspects and to build the same through
activities
Course Outcomes:
On completion of the course, student will be able to–
Effectively communicate through verbal/oral communication and improve the listening
skills
Write precise briefs or reports and technical documents.
Actively participate in group discussion / meetings / interviews and prepare & deliver
presentations.
Become more effective individual through goal/target setting, self motivation and practicing
creative thinking.
Function effectively in multi-disciplinary and heterogeneous teams through the knowledge
of team work,
Inter-personal relationships, conflict management and leadership quality.
Course Contents
Unit I Self-Development
Introduction to soft skills, Self-Management: Self-Evaluation, Self-Discipline, Self-Criticism, Self-
Awareness, Self-Esteem, Positive Thinking, Perceptions and Attitudes, Values and Belief
Systems, Personal success factors, Handling failure, Knowing Yourself, identifying one‘s
strengths and weaknesses, SWOT analysis, Johari‘s Window, Career Planning & Goal setting,
prioritization, Managing self – emotions, ego, pride, stress; Personality development.
Vocabulary: One - Word Substitutes, Words often Confused - Pairs of Words, Synonyms and
Antonyms, Foreign Phrases, Phrasal verbs derived from the dynamic verbs, Business Writing:
Note Making, Letter writing, Writing Formal Letters. Technical Report Writing, Memo,
Notices/Circulars Agenda and Minutes of a Meeting, E-Mail, Essay writing. Employment
Communication: Job Application, Preparation of C.V and Resume writing. Presentation skills:
Professional Presentation, Nature of Oral Presentation, Planning a Presentation, Preparing the
Presentation, Delivering the Presentation.
Introduction, Leader and Leadership, Leadership Traits, Culture and Leadership : Salient Features
of Corporate Culture, Leadership Styles ,Leadership Trends, Team Building: Team Development
Stages, Types of Teams : Cross-functional Team, Problem-solving Team, Inter- personal relations:
Types of feelings, steps to deal with complex feelings. Assertiveness and Confidence building.
Types of Conflict and resolutions. Emotions, emotional empathy and emotional intelligence
Introduction, Stress in Today‘s Time: Identify the Stress Source, Signs of Stress, Ways to Cope
with Stress : Healthier Ways to Combat Stress, Steps to be Taken in the Organizations : Open
communication, Time Management, Working towards Your Goals, Smart Work, Prioritize your
Tasks,4 Ds of Decision Making
Text:
1. Gajendra Singh Chauhan, Sangeeta Sharma : Soft Skills – An Integrated Approach to
Maximise Personality, WILEY INDIA, ISBN:13:9788126556397.
Reference:
1. Indrajit Bhattacharya, An Approach to Communication Skills, Delhi, Dhanpat Rai, 2008.
2. Simon Sweeney ,English for Business Communication ,Cambridge University Press, ISBN
13:978-0521754507.
3. Sanjay Kumar and Pushpa Lata, Communication Skills, Oxford University Press, ISBN
10:9780199457069.
4. Atkinson and Hilgard's, Introduction to Psychology, 14th Edition, Geoffrey Loftus, ISBN-
10:0155050699 © 2003
5. Kenneth G. Mcgee, Heads Up: How to Anticipate Business Surprises & Seize
Opportunities First, Harvard Business School Press, Boston, Massachusetts, 2004, ISBN
10:1591392993.
6. Krishnaswami, N. and Sriraman, T, Creative English for Communication, Macmillan.
Guidelines for Instructor's Manual
The instructor‘s manual is to be developed as a hands-on resource and reference. The instructor's
manual need to include prologue (about University/program/ institute/
department/foreword/preface etc), University syllabus, conduction & Assessment guidelines,
topics under consideration concept objectives, outcomes, guidelines, references.
Guidelines for Student's Lab Journal and TW Assessment
The student must prepare the journal in the form of report elaborating the activities performed in the
lab. Continuous assessment of laboratory work is to be done based on overall performance and lab
assignments performance of student. Each lab assignment assessment will assign grade/marks
based on parameters with appropriate weightage. Suggested parameters for overall assessment as
well as each lab assignment assessment include- timely completion, performance, punctuality,
neatness, enthusiasm, participation and contribution in various activities-SWOT analysis,
presentations, team activity, event management, group discussion, Group exercises and interpersonal
skills and similar other activities/assignments.
Guidelines for Soft skills Lab Conduction
The instructor may frame assignments to enhance skills supporting career aspects. Multiple set of
activity based assignments can be prepared and distributed among batches. Every student must be
given adequate opportunity to participate actively in each activity. An exercise can be designed to
allow multiple skills exposure for example a group task encouraging discussions, team building, value
sharing, leadership and role play all at the same time.
SWOT analysis
The students should be made aware of their goals, strengths and weaknesses, attitude, moral
values, self confidence, etiquettes, non-verbal skills, achievements etc. through this activity.
1.
SWOT Analysis, Confidence improvement, values, positive attitude, positive thinking and
self esteem. The concern teacher should prepare a questionnaire which evaluate students in
all the above areas and make them aware about these aspects.
Personal & Career Goal setting – Short term & Long term
2. The teacher should explain to them on how to set goals and provide template to write their
short term and long term goals.
Public Speaking
Any one of the following activities may be conducted :
1. Prepared speech (Topics are given in advance, students get 10 minutes to prepare the
3. speech and 5 minutes to deliver.) 2. Extempore speech (Students deliver speeches
spontaneously for 5 minutes each on a given topic ) 3. Story telling (Each student narrates a
fictional or real life story for 5 minutes each) 4. Oral review ( Each student orally presents a
review on a story or a book read by them)
Guidelines for Conduction and Assessment (Any one or more of following but not limited to)
Surveys
Lectures/ Guest Lectures
Mini Project
Visits (Social/Field) and reports
Hands on experience on
Demonstrations
specific focused topic
Guidelines for Assessment (Any one or more of following but not limited to)
Written Test
IPR/Publication
Demonstrations/ Practical Test
Report
Presentations
Audit Course 1 Options
Course Code Audit Course Title
AC1-I Road Safety
AC1-II Humanities and Social Sciences
AC1-III Environmental Studies
AC1-IV Smart Cities
AC1-V Foreign Language (one of Japanese/Spanish/French/German). Course contents for
Japanese( Module 1) are provided. For other languages institute may design
suitably.
Road transport remains the least safe mode of transport, with road accidents representing the main
cause of death of people. The boom in the vehicle population without adequate road infrastructure,
poor attention to driver training and unsatisfactory regulation has been responsible for increase in
the number of accidents. India‘s vehicle population is negligible as compared to the World
statistics; but the comparable proportion for accidents is substantially large.
The need for stricter enforcement of law to ensure greater safety on roads and an environment-
friendly road transport operation is of paramount importance. Safety and security are growing
concerns for businesses, governments and the traveling public around the world, as also in India. It
is, therefore, essential to take new initiatives in raising awareness, skill and knowledge of students
as one of the ibid stake holders who are expected to follow the rules and policies of the government
in order to facilitate safety of individual and safe mobility of others.
Course Contents
1. Existing Road Transport Scenario
2. Accident Causes & Remedies
3. Road Accident Investigation & Investigation Methods
4. Vehicle Technology – CMVR & Road Safety
5. Regulatory / Legislative Provisions for Improving Road Safety
6. Behavioral Training for Drivers for Improving Road Safety
7. Road Safety Education
8. Road Engineering Measures for Improving Road Safety
Reference:
1. ―Road Accidents in India Issues & Dimensions‖ , Ministry of Road Transport & Highways
Government of India (www.unescap.org/sites/default/files/2.12.India_.pdf)
2. ―Road Safety in India- Insights and analysis‖, http://indiatransportportal.com/wp-
content/uploads/2012/11/Road_safety_2012.pdf
3. Road User‘s Handbook, ROADS & MARITIME PUBLICATIONS
4. ―Improving Road Safety in Developing Countries‖, The national Academic Press
Course Outcomes:
On completion of the course, student will be able to–
Making engineering and technology students aware of the various issues concerning
man and society.
These issues will help to sensitize students to be broader towards the social, cultural,
economic and human issues, involved in social changes
Able to understand the nature of the individual and the relationship between the self and the
community
Understanding major ideas, values, beliefs, and experiences that have shaped human history
and cultures
Course Contents
1. Indian Society : Structure of Indian Society, Indian Social Demography– Social
and Cultural, Differentiations: caste, class, gender and tribe; Institutions of marriage,
family and kinship- Secularization –Social Movements and Regionalism-
Panchayatraj Institutions; Indian constitution; Affirmative Action Programme of the
Government- various reservations and commissions.
References:
1. Krugman, ― International Economics‖, Pearson Education, ISBN-13:000-01334-23646
2. Prakash, ―The Indian Economy‖, Pearson Education, ISBN-8131758931
3. Thursen Gerald, ―Engineering Economics‖, Prentice Hall, ISBN-10:0138221227
4. C.S. Rao, ―Environmental Pollution Control Engineering‖, New Age International Pvt. Ltd,
ISBN-812241835X
5. Rangarajan, ―Environmental Issues in India, Pearson Education‖, ISBN-10:8131708101
6. University of Delhi, ―The Individual & Society‖, Pearson Education. ISBN-8131704173
7. Wikipedia.org / wiki /social studies.
8. M. N. Srinivas, ―Social change in modern India, 1991‖, Orient Longman, ISBN-
10:812500422X
9. David Mandelbaum, ―Society in India‖, 1990, Popular, ISBN-10:8171540139
10. David Newman, ―Exploring the architecture of everyday life‖, Pine Forge Press, 7th
edition, ISBN-10:1452275947
Fourier Transform (FT): Complex exponential form of Fourier series, Fourier integral theorem,
Fourier Sine & Cosine integrals, Fourier transform, Fourier Sine and Cosine transforms and their
inverses, Discrete Fourier Transform.
Z - Transform (ZT): Introduction, Definition, Standard properties, ZT of standard sequences and
their inverses. Solution of difference equations.
Unit III Statistics 09 Hours
References:
1. J. Foley, V. Dam, S. Feiner, J. Hughes, ―Computer Graphics Principles and Practice‖, 2nd
Edition, Pearson Education, 2003, ISBN 81 – 7808 – 038 – 9.
2. D. Rogers, J. Adams, ―Mathematical Elements for Computer Graphics‖, 2nd Edition, Tata
McGrawHill Publication, 2002, ISBN 0 – 07 – 048677 – 8.
3. Mario Zechner, Robert Green, ―Beginning Android 4 Games Development‖, Apress, ISBN:
978-81- 322-0575-3.
Course Objectives:
To learn the architecture and programmer‘s model of advanced processor
To understand the system level features and processes of advanced processor
To acquaint the learner with application instruction set and logic to build assembly language
programs.
To understand debugging and testing techniques confined to 80386 DX
Course Outcomes:
On completion of the course, student will be able to–
To apply the assembly language programming to develop small real life embedded
application.
To understand the architecture of the advanced processor thoroughly to use the resources for
programming
To understand the higher processor architectures descended from 80386 architecture
Course Contents
Unit I 80386DX- Basic Programming Model and Applications Instruction Set 08 Hours
Memory Organization and Segmentation- Global Descriptor Table, Local Descriptor Table,
Interrupt Descriptor Table, Data Types, Registers, Instruction Format, Operand Selection,
Interrupts and Exceptions
Applications Instruction Set- Data Movement Instructions, Binary Arithmetic Instructions,
Decimal Arithmetic Instructions, Logical Instructions, Control Transfer Instructions, String and
Character Transfer Instructions, Instructions for Block Structured Language, Flag Control
Instructions, Coprocessor Interface Instructions, Segment Register Instructions, Miscellaneous
Instructions.
Unit II Systems Architecture and Memory Management 08 Hours
Systems Architecture- Systems Registers, Systems Instructions
Memory Management: Segment Translation, Page Translation, Combining Segment and Page
Translation.
Unit III Protection and Multitasking 08 Hours
Protection- Need of Protection, Overview of 80386DX Protection Mechanisms, Segment Level
Protection, Page Level Protection, Combining Segment and Page Level Protection
Multitasking- Task State Segment, TSS Descriptor, Task Register, Task Gate Descriptor, Task
Switching, Task Linking, Task Address Space.
Unit IV Input-Output, Exceptions and Interrupts 08 Hours
Syllabus for Second Year of Computer Engineering #48/68
Faculty of Engineering Savitribai Phule Pune University, Pune
Course Objectives:
To learn principles of programming language
To understand structural, computational and logical implications regarding programming
languages
To explore main programming paradigms
To understand and apply Object Oriented Programming(OOP) principles using C++ and
Java
Course Outcomes:
On completion of the course, student will be able to–
To analyze the strengths and weaknesses of programming languages for effective and
efficient program development.
To inculcate the principles underlying the programming languages enabling to learn new
programming languages.
To grasp different programming paradigms
To use the programming paradigms effectively in application development.
Course Contents
Unit I Programming Language Syntax and semantics 08 Hours
Software development process, language and software development environments, language and
software design methods, languages and computer architecture, programming language qualities,
languages and reliability, languages and maintainability, languages and efficiency, a brief historical
perspective and early high level languages, a bird's eye view of programming language concepts.
Syntax and semantics-language definition, syntax, abstract syntax, concrete syntax, and
pragmatics, semantics, an introduction to formal semantics, languages, language processing,
interpretation, translation, the concept of binding, variables, name and scope, Type, l-value, r-value,
reference and unnamed variables, routines, generic routines, aliasing and overloading, an abstract
semantic processor, run time structure. Case study- run time structure of C.
Unit II Structuring the Data, Computations and Program 08 Hours
Structuring of Data- Built in and primitive types, Data aggregates and type constructors, Cartesian
product, Finite mapping User-defined types and abstract data types, Type systems, Static versus
dynamic program checking, Strong typing and type checking, Type compatibility, Type
conversions, Types and subtypes, Generic types, monomorphic versus polymorphic type systems,
Case Study- The type structure of C++, Java.
Structuring of Computations- Structuring the computation, Expressions and statements,
Conditional execution and iteration, Routines, Style issues: side effects and aliasing, Exceptions,
Case Study-Exception handling in C++.
References:
1. Sebesta R., "Concepts of Programming Languages", 4th Edition, Pearson Education, ISBN-
81-7808-161-X.
2. Deugo, ―Java Gems‖, Cambridge University Press, ISBN 10: 0521648246 ISBN 13:
9780521648240
3. Roosta S., "Foundations of Programming Languages", Thomson Brookes/Cole, ISBN 981 -
243-141-1.
4. Allen Tucker, Robert Noonan, "Programming language Principles and Paradigms‖, TMH
3rd Ed, ISBN 0-07-048704-9.
5. T. W. Pratt, M. V. Zelkowitz, "Programming Languages Design and Implementation‖, 4th
Ed, PHI, ISBN 81-203-2035-2.
Group A
Write C++/Java program to draw line using DDA and Bresenham‘s algorithm. Inherit pixel
1.
class and Use function overloading.
2. Write C++/Java program to draw circle using Bresenham‘s algorithm. Inherit pixel class.
Write C++/Java program to draw 2-D object and perform following basic transformations,
a) Scaling
3. b) Translation
c) Rotation
Use operator overloading.
Write C++/Java program to fill polygon using scan line algorithm. Use mouse interfacing to
4.
draw polygon.
A Mandelbrot Set is a set of complex number z that does not diverge under the
transformation with .Where, both x and z represent the complex
5. numbers. Write C++/Java program to
a). Plot the Mandelbrot set for the threshold |x|= 2.
b) Plot Julia set choosing z ≠ 0. Use 254 colors for plotting in both cases.
Write C++/Java program to draw the polygons by using the mouse. Choose colors by clicking
6.
on the designed color pane. Use window port to draw. Use DDA algorithm for line drawing.
Write C++/Java program to draw inscribed and Circumscribed circles in the triangle as shown
as an example below. (Use any Circle drawing and Line drawing algorithms)
7.
Write C++/Java program to draw the following pattern using any Line drawing algorithms.
8.
Write C++/Java program to draw a 4X4 chessboard rotated 45˚ with the horizontal axis. Use
9. Bresenham algorithm to draw all the lines. Use seed fill algorithm to fill black squares of the
rotated chessboard.
Group B
Write C++/Java program for line drawing using DDA or Bresenhams algorithm with patterns
10.
such as solid, dotted, dashed, dash dot and thick.
Write C++/Java program to draw a convex polygon and fill it with desired color using Seed
11.
fill algorithm. Use mouse interfacing to draw polygon.
Write C++/Java program to draw a concave polygon and fill it with desired pattern using scan
12.
line algorithm. Use mouse interfacing to draw polygon.
Write C++/Java program to implement Cohen-Sutherland line clipping algorithm for given
13.
window. Draw line using mouse interfacing to draw polygon
Write C++/Java program to draw any object such as flower, waves using any curve generation
14.
techniques
Write C++/Java program to implement Painter‘s algorithm (or any hidden surface removal
15.
algorithm) for hidden surface removal
Write C++/Java program to implement reflection of2-D object about X axis, Y axis and about
16.
X=Y axis. Also rotate object about arbitrary point given by user.
17. Write C++/Java program to generate Hilbert curve using concept of fractals.
18. Write C++/Java program to generate snowflake using concept of fractals.
19. Write C++/Java program to generate Bouncing ball animation using Direct3D/Maya/Blender
Write C++/Java program to implement Cohen Sutherland Hodgman algorithm to clip any
20. given polygon. Provide the vertices of the polygon to be clipped and pattern of clipping
interactively.
Write C++/Java program to implement translation, sheer, rotation and scaling transformations
21.
on equilateral triangle and rhombus.
Group C
Write C++/Java program to draw 3-D cube and perform following transformations on it using
OpenGL.
22. a) Scaling
b) Translation
c) Rotation about one axis
Design and simulate any data structure like stack, queue, and trees using graphics. Simulation
23. should include all operations performed on designed data structure. Write C++/Java program
for the same using OpenGL.
Write C++/Java program to draw implement Cube rotation about vertical axis passing through
24.
its centroid.
25. Write C++/Java program to generate fractal patterns by using Koch curves.
Design and implement game / animation clip / Graphics Editor using open source graphics
27.
library.
Group B
Syllabus for Second Year of Computer Engineering #58/68
Faculty of Engineering Savitribai Phule Pune University, Pune
9 Write a function to get the number of vertices in an undirected graph and its edges. You may
assume that no edge is input twice.
i. Use adjacency list representation of the graph and find runtime of the function
ii. Use adjacency matrix representation of the graph and find runtime of the function
10 There are flight paths between cities. If there is a flight between city A and city B then there
is an edge between the cities. The cost of the edge can be the time that flight take to reach
city B from A, or the amount of fuel used for the journey. Represent this as a graph. The
node can be represented by airport name or name of the city. Use adjacency list
representation of the graph or use adjacency matrix representation of the graph. Justify the
storage representation used.
11 You have a business with several offices; you want to lease phone lines to connect them up
with each other; and the phone company charges different amounts of money to connect
different pairs of cities. You want a set of lines that connects all your offices with a minimum
total cost. Solve the problem by suggesting appropriate data structures.
12 Tour operator organizes guided bus trips across the Maharashtra. Tourists may have different
preferences. Tour operator offers a choice from many different routes. Every day the bus
moves from starting city S to another city F as chosen by client. On this way, the tourists can
see the sights alongside the route travelled from S to F. Client may have preference to choose
route. There is a restriction on the routes that the tourists may choose from, the bus has to
take a short route from S to F or a route having one distance unit longer than the minimal
distance. Two routes from S to F are considered different if there is at least one road from a
city A to a city B which is part of one route, but not of the other route.
13 Consider the scheduling problem. n tasks to be scheduled on single processor. Let t1, ..., tn
be durations required to execute on single processor is known. The tasks can be executed in
any order but one task at a time. Design a greedy algorithm for this problem and find a
schedule that minimizes the total time spent by all the tasks in the system. (The time spent by
one is the sum of the waiting time of task and the time spent on its execution.)
Group C
14 Consider telephone book database of N clients. Make use of a hash table implementation to
quickly look up client‘s telephone number.
15 Implement all the functions of a dictionary (ADT) using hashing.
Data: Set of (key, value) pairs, Keys are mapped to values, Keys must be comparable, Keys
must be unique
Standard Operations: Insert(key, value), Find(key), Delete(key)
16 For given set of elements create skip list. Find the element in the set that is closest to some
given value.
17 The symbol table is generated by compiler. From this perspective, the symbol table is a set
of name-attribute pairs. In a symbol table for a compiler, the name is an identifier, and the
attributes might include an initial value and a list of lines that use the identifier.
Perform the following operations on symbol table:
(1) Determine if a particular name is in the table
(2) Retrieve the attributes of that name
(3) Modify the attributes of that name
(4) Insert a new name and its attributes
(5) Delete a name and its attributes
Group D
18 Given sequence k = k1 <k2 < … < kn of n sorted keys, with a search probability pi for each
key ki . Build the Binary search tree that has the least search cost given the access probability
for each key?
19 A Dictionary stores keywords & its meanings. Provide facility for adding new keywords,
deleting keywords, updating values of any entry. Provide facility to display whole data sorted
in ascending/ Descending order. Also find how many maximum comparisons may require for
finding any keyword. Use Height balance tree and find the complexity for finding a keyword
Group E
20 To create ADT that implement the "set" concept.
a. Add (newElement) -Place a value into the set b. Remove (element) Remove the value
c. Contains (element) Return true if element is in collection
d. Size () Return number of values in collection Iterator () Return an iterator used to loop
over collection
e. Intersection of two sets f. Union of two sets g. Difference between two sets h.Subset
21 Read the marks obtained by students of second year in an online examination of particular
subject. Find out maximum and minimum marks obtained in a that subject. Use heap data
structure. Analyze the algorithm.
Group F
22 Assume we have two input and two output tapes to perform the sorting. The internal memory
can hold and sort m records at a time. Write a program in java for external sorting. Find out
time complexity.
23 Department maintains a student information. The file contains roll number, name, division
and address. Allow user to add, delete information of student. Display information of
particular employee. If record of student does not exist an appropriate message is displayed.
If it is, then the system displays the student details. Use sequential file to main the data.
24 Company maintains employee information as employee ID, name, designation and salary.
Allow user to add, delete information of employee. Display information of particular
employee. If employee does not exist an appropriate message is displayed. If it is, then the
system displays the employee details. Use index sequential file to maintain the data.
Group G
25 Implement the Heap/Shell sort algorithm implemented in Java demonstrating heap/shell data
structure with modularity of programming language
26 Any application defining scope of Formal parameter, Global parameter, Local parameter
accessing mechanism and also relevance to private, public and protected access. Write a
Java program which demonstrates the scope rules of the programming mechanism.
27 Write a Java program which will demonstrate a concept of Interfaces and packages: In this
assignment design and use of customized interfaces and packages for a specific application
are expected
28 Write a Java program which will demonstrate a concept of cohesion and coupling of the
various modules in the program.
29 Write a program on template and exception handling in Java: in this assignment multiple
templates are to be designed as a pattern and these patterns to be used to take decisions.
30 Write a Java program for the implementation of different data structures using JAVA
collection libraries (Standard toolkit library): at least 5 data structures are used to design a
suitable application
31 Design a mini project using JAVA which will use the different data structure with or without
Java collection library and show the use of specific data structure on the efficiency
(performance) of the code.
In addition to these, instructor may assign one real life application in the form of a mini-project
based on the concepts learned. Instructor may also set one assignment or mini-project that is
suitable to respective branch beyond the scope of syllabus.
Operating System: Latest 64-bit Version and update of Microsoft Windows 7/ Windows 8
Operating System onwards or 64-bit Open source Linux or its derivative.
Programming Tools: Preferably using Linux equivalent or MASM 64x or equivalent, Microsoft
Visual Studio x64 Intrinsic.
Suggested List of Laboratory Assignments
1. Write X86/64 ALP to count number of positive and negative numbers from the array
2. Write X86/64 ALP to perform non-overlapped and overlapped block transfer (with and
without string specific instructions). Block containing data can be defined in the data
segment.
3. Write X86/64 ALP to convert 4-digit Hex number into its equivalent BCD number and 5-
digit BCD number into its equivalent HEX number. Make your program user friendly to
accept the choice from user for:
(a) HEX to BCD b) BCD to HEX (c) EXIT.
Display proper strings to prompt the user while accepting the input and displaying the
result. (wherever necessary, use 64-bit registers)
4. Write X86/64 ALP to perform multiplication of two 8-bit hexadecimal numbers. Use
successive addition and add and shift method. Accept input from the user. (use of 64-bit
registers is expected)
5. Write X86 ALP to find, a) Number of Blank spaces b) Number of lines c) Occurrence of a
particular character. Accept the data from the text file. The text file has to be accessed
during Program_1 execution and write FAR PROCEDURES in Program_2 for the rest of
the processing. Use of PUBLIC and EXTERN directives is mandatory.
6. Write X86/64 ALP to switch from real mode to protected mode and display the values of
GDTR, LDTR, IDTR, TR and MSW Registers.
7. Write X86 program to sort the list of integers in ascending/descending order. Read the input
from the text file and write the sorted data back to the same text file using bubble sort
8. Write X86 menu driven Assembly Language Program (ALP) to implement OS (DOS)
commands TYPE, COPY and DELETE using file operations. User is supposed to provide
command line arguments in all cases.
9. Write x86 ALP to find the factorial of a given integer number on a command line by using
recursion. Explicit stack manipulation is expected in the code.
10. Write 80387 ALP to find the roots of the quadratic equation. All the possible cases must be
considered in calculating the roots.
11. Write 80387 ALP to plot Sine Wave, Cosine Wave and Sinc function. Access video
memory directly for plotting.
12. Write 80387 ALP to obtain: i) Mean ii) Variance iii) Standard Deviation Also plot the
histogram for the data set. The data elements are available in a text file.
13. Write a Terminate but Stay Resident (TSR) program for a key-logger. The key-presses
during the stipulated time need to be displayed at the center of the screen. OR
Write a TSR to generate the pattern of the frequency tones by reading the Real Time
Clock (RTC). The duration of the each tone is solely decided by the programmer.
14. Write 80386 ALP to implement multitasking. Where each task is supposed to change the
color of the text displayed at the center of the screen
Guidelines for Conduction and Assessment (Any one or more of following but not limited to)
Surveys
Lectures/ Guest Lectures
Mini Project
Visits (Social/Field) and reports
Hands on experience on specific focused
Demonstrations
topic
Guidelines for Assessment (Any one or more of following but not limited to)
Written Test
IPR/Publication
Demonstrations/ Practical Test
Report
Presentations
Audit Course 2 Options
Audit Course Audit Course Title
Code
AC2-I Water Management
AC2-II Intellectual Property Rights and Patents
AC2-III The Science of Happiness
AC2-IV Stress Relief: Yoga and Meditation
AC2-V Foreign Language (one of Japanese/Spanish/French/German) Course contents for
Japanese( Module 2) are provided. For other languages institute may design
suitably.
Course Objectives
To understand the feeling of happiness
To study the sources of positive feelings
To analyze the anatomy of the happiness system
To study the effect of thoughts and emotions on the happiness system
Course Outcomes
On completion of the course, learner will be able to–
Ability to understand what happiness is and why it matters to you
Ability to learn how to increase your own happiness
Understanding of the power of social connections and the science of empathy
Ability to understand what is mindfulness and its real world applications
Course Contents
Course Objectives:
To meet the needs of ever growing industry with respect to language support.
To get introduced to Japanese society and culture through language.
Course Outcomes:
On completion of the course student
will have ability of basic communication.
will have the knowledge of Japanese script.
will get introduced to reading , writing and listening skills
will develop interest to pursue professional Japanese Language course
Course Contents
1 : Katakana basic Script, Denoting things ( nominal & prenominal demonstratives ),
Purchasing at the Market / in a shop / mall (asking & stating price)
2 : Katakana : Modified kana, double consonant, letters with ya, yu, yo, Long vowels,
Describing time, describing starting & finishing time ( kara ~ made ), Point in time (denoting the
time when any action or the movement occurs)
3 : Means of transport (Vehicles), Places, Countries, Stating Birth date, Indicating movement
to a certain place by a vehicle
References-
1. Minna No Nihongo, ―Japanese for Everyone‖, (Indian Edition), Goyal Publishers &
Distributors Pvt. Ltd.
2. http://www.tcs.com (http://www.tcs.com/news_events/press_releases/Pages/TCS-Inaugurates-
Japan-centric-Delivery-Center-Pune.aspx)