sandip university, nashik school of engineering second year of … · 2019-11-23 · sandip...
TRANSCRIPT
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Discrete Mathematics and Logic
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Discrete Mathematics andLogic
Course Code: YCA301
Theory: 04 Hrs/ Week
Credits: 04
End-Sem (paper): 50 Marks
CIA: 50 Marks
Prerequisite:- Basic Mathematics
Course Objectives:
To impart fundamentals of discrete mathematical structures useful in studying, analysing and
solving problems in Computer Science.
To sharpen the mathematical skills by practicing problem solving, logical reasoning and
writing precise proofs.
To impart skills for applying ideas from discrete mathematics to real world problems.
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
Unit I Sets & Logic 08 Hours
Set Theory : Need of Set, Representation of Sets, Subsets, Venn Diagrams, complements, Cartesian
products, Operations on sets, Laws of Set Theory, Power Sets and Products, cardinality and
countability (Countable and Uncountable sets), Partition of sets, Multisets, The Principle of Inclusion
- Exclusion.
Logic : Propositions and Logical operations, Truth tables, Equivalence, Implications, Laws of Logic,
Normal forms, Predicates and quantifiers, Mathematical Induction.
Unit II Relations and Functions 08 Hours
Relations: Relations and their properties, n-array relations and their applications, representing
relations, closure of relations, equivalence of relations, partial orderings, Hasse Diagram, Lattices,
Chains and Anti-Chains, Transitive Closure and Warshall‘s Algorithm
Functions: Surjective, Injective and Bijective functions, Inverse Functions and Compositions of
Functions, The Pigeonhole Principle.
Unit III Graph 07 Hours
Basic terminology, representation of a graph in computer memory, multi-graphs and weighted
graphs, Subgraphs, Isomorphic graphs, Complete, regular and bipartite graphs, operations on graph,
paths and circuits, Euler paths and circuits, Hamiltonian paths and circuits, Planner graphs, shortest
path in weighted graphs (Dijkstra’s algorithm), coloring graphs, Isomorphism of Graphs.
Unit IV Trees 08 Hours
Basic terminology and characterization of trees, rooted trees and path length in rooted trees, binary
search trees , Tree traversal , Fundamental Trees and cut sets, Spanning tree and Minimal Spanning
tree, Isomorphism of trees, Weighted trees and Prefix Codes, The Max flow- Min Cut Theorem
(Transport network).
Unit V Algebraic Structures 07 Hours
Algebraic structures with one binary operation - semi groups, monoids and groups, Isomorphism,
homomorphism, automorphism, Cyclic groups, Normal sub group, codes and group codes, Algebraic
structures with two binary operations - rings, integral domains and fields. Ring homomorphism and
Isomorphism.
Books:
Text:
1. C L Liu, “Elements of Discrete Mathematics”, Tata McGraw-Hill, ISBN 10:0-07-066913-9. 2. K.H. Rosen, “Discrete Mathematics and its application”, 7th edition, Tata McGraw Hill, ISBN
978-0-07-338309-5.
3. B. Kolman, Robert C. Busby, Sharon Ross, “Discrete Mathematical Structure”, 6th edition,
Pearson/Prentice Hall, ISBN 9780132078450.
Reference:
1. Kenneth H. Rosen, “Discrete Mathematics and its Applications”, 6th edition, McGraw-Hill, 2007, ISBN 978-0-07-288008-3.
2. Tremblay J. P. and R. Manohar, Discrete Mathematical Structures with Applications to Computer
Science, Tata McGraw-Hill, 1997.
3. Bernard Kolman, Robert C. Busby and Sharon Ross, Discrete Mathematical Structures, Prentice-Hall of India /Pearson, ISBN: 0132078457, 9780132078450.
4. N. Biggs, “Discrete Mathematics‖”, 3rd Edition, Oxford University Press, ISBN 0-19 850717 – 8.
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Digital Design & Computer Organization
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Digital Design and Computer
Organizaion
Course Code: YCA302
Theory: 04 Hrs/ Week
Credits: 04
End-Sem (paper): 50 Marks
CIA: 50 Marks
Prerequisite:-
Fundamentals of Programming Languages
Basics of Electronics Engineering
Course Objectives:
To understand the structure, function and characteristics of computer systems.
To understand the design of the various functional units and components of digital
computers.
To identify the elements of modern instructions sets and explain their impact on processor
design.
Course Outcomes: On completion of the course, student will be able to–
Realize and simplify Boolean Algebraic assignments for designing digital circuits using K-
Maps.
Design and implement Sequential and Combinational digital circuits as per the specifications.
Apply the knowledge to appropriate IC as per the design specifications
Course Contents
Unit I Digital Electronics 08 Hours
Number systems, Decimal Number system, Binary number system, Octal &Hexa decimal number
system,1's & 2's complement, Binary Fixed Point Representation, Arithmetic operation on Binary
numbers, Overflow &underflow.Logic Gates, AND, OR, NOT GATES and their T ruth tables,
NOR, NAND & XOR gates.
Unit II Introduction to Computer 08 Hours
Basic Organization of Computers, Classification Micro, Mini, Mainframe and Super Computer.
System Bus and Interconnection, PCI, Computer Function, I-Cycle, Interrupt and Class of
Interrupts, Von-Neumann M/c: Structure of IAS. Fundamental Concepts: Fetching and storing a
word in Memory, Register Transfer, Performing an Arithmetic & Logic Operation, Execution of a
Completes, Branching.
Unit III General Register Organization 07 Hours
Three Address, Two Address, One Address and Zero Address Instruction, Addressing Modes: Types
of Addressing modes, Numerical Examples, Program Relocation, Compaction, Data Transfer &
Manipulation: Data transfer, Data Manipulation, Arithmetic, Logical & Bit Manipulation Instruction,
Program Control: Conditional Branch Instruction, Subroutine, Program Interrupt, Types of Interrupt,
RISC & CISC Characteristic. Control Unit Operation: Hardware Control & Micro Programmed
Control.
Unit IV Input/output Organization 08 Hours
Peripheral Devices, Input – output Interface, I/O Bus, Interface Module, Asynchronous Data
Transfer, Strobe Control, Handshaking, Asynchronous Serial Transfer, Asynchronous
Communication Interface, Modes of Transfer: Programmed I/O, Interrupt Driven I/O, Direct
Memory Access (DMA), DMA Controller, I/O Channel & Processor. Priority Interrupt: Daisy
Chaining Priority, Parallel Priority Interrupt.
Unit V Memory Organization 07 Hours
Computers Memory System Overview, Characteristics of Memory System, The Memory Hierarchy,
Semi Conductor Main Memory types, Organisation, Memory cell Operation. Cache Memory: Cache
Principles, Elements of Cache Design, Cache Size, Mapping function, Replacement Algorithm, LRU,
FIFO, LFU, Memory: Paging, Paging h/w, Address Mapping using pages, Segmentation h/w,
Demand Paging, Memory Management h/w.
Books:
Text:
1. Stephen Brown, Zvonko Vranesic, ―Fundamentals of Digital Logic with VHDL Design‖,
McGraw-Hill, ISBN–13:978-1-25-902597-6.
2. R.P. Jain, ―Modern Digital Electronics‖, TMH, 2012, ISBN–13: 978-0-07- 066911-6.
3. W. Stallings, ―Computer Organization and Architecture: Designing for performance‖,
Pearson Education/ Prentice Hall of India, 2003, ISBN 978-93-325-1870-4, 7th Edition.
4. Zaky S, Hamacher, ―Computer Organization‖, 5th Edition, McGraw-Hill Publications,
2001, ISBN- 978-1-25-900537-5, 5th Edition.
Reference: 1. John Yarbrough, ―Digital Logic applications and Design‖, Cengage Learning, ISBN – 13:
978-81-315-0058-3
2. John P Hays, ―Computer Architecture and Organization‖, McGraw-Hill Publication, 1998,
ISBN:978-1-25-902856-4, 3rd Edition.
3. A. Tanenbaum, ―Structured Computer Organization‖, Prentice Hall of India, 1991 ISBN: 81
– 203 – 1553 – 7, 4th Edition
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Object Oriented Programming
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Object Oriented Programming Course Code: YCA303
Theory: 04 Hrs/ Week
Credits: 04
End-Sem (paper): 50 Marks
CIA: 50 Marks
Prerequisite:- Fundamentals of Programming Languages
Course Objectives:
To study the object-oriented programming principles and techniques.
To understand fundamental concepts of OOP such as data abstraction, encapsulation,
inheritance, dynamic binding and polymorphism.
To create base of cutting-edge programming.
Course Outcomes: On completion of the course, student will be able to–
Apply standards and principles to write executable code.
Take a problem and develop the structures to represent the solution in the form of objects and
the algorithms.
Check the program and, if necessary, find errors in the program and rectify them.
Course Contents
Unit I Introduction to OOP 07 Hours
Principles of OOP: Software crisis, Software evolution, OOP paradigm, Basic Concepts of OOP,
Benefits & applications of OOP.
Functions: Function, function prototype, accessing function and utility function.
Moving from C to C++: Declaration of variable, Reference variables, Scope resolution operator,
Member dereferencing operator, memory management operators.
Beginning with C++: What is C++, Applications of C++, A Simple C++ Program.
Unit II Concepts of Object Oriented Programming with C++ 07 Hours
Classes and Objects: Class, Object, class and data abstraction, class scope and accessing class
members, Controlling access to members, Objects and Memory requirements, Defining member
functions, A C++ program with class, Making an outside function inline, Nesting of member
function, Private member function, Arrays within class, Member allocation for objects, Arrays of
objects, Objects as function arguments. Static Class members, Static Functions, inline function,
Friend Function.
Constructors & Destructors: Constructors, Parameterized constructors, Multiple constructors in a
class, Constructors with default arguments, Destructors.
Unit III Polymorphism and Inheritance 08 Hours
Polymorphism: Operator overloading concept, Use of operator overloading, defining operator
overloading, Binary operator overloading.
Inheritance- Base Class and derived Class, protected members, relationship between base Class and
derived Class, Constructor and destructor in Derived Class, Overriding Member Functions, Class
Hierarchies, Inheritance, Public and Private Inheritance, Levels of Inheritance, Multiple Inheritance,
Ambiguity in Multiple Inheritance.
Unit IV Virtual Functions and Templates 08 Hours
Virtual Functions-Pointers- indirection Operators, Memory Management: new and delete, Pointers to
Objects, accessing Arrays using pointers, Function pointers, Pointers to Pointers, this Pointer, virtual
function, dynamic binding, Virtual destructor.
Templates-function templates, Function overloading, overloading Function templates, class
templates, class template and Nontype parameters.
Unit V Exception Handling, File, Streams and STL 08 Hours
Exception Handling: Fundamentals of exception handling techniques, simple exception handling-
Divide by Zero, rethrowing an exception, exception specifications.
Files and Streams : 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,
Standard Template Library: Introduction to STL, Containers, algorithms and iterators.
Books:
Text:
1. Balagurusamy, “Object Oriented Programming with C++” Sixth Edition, McGrawHill
Publication, ISBN 13:978-1-25-902993-6.
2. BjarneStroustrup, ―The C++ Programming language‖, Third edition, Pearson Education.
ISBN 9780201889543.
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. Cox Brad, Andrew J. Novobilski, ―Object –Oriented Programming: An Evolutionary
Approach‖, Second Edition, Addison–Wesley, ISBN:13:978-020-1548341.
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Fundamentals of Data Structures
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Fundamentals of Data Structures Course Code: YCA304
Theory: 04 Hrs/ Week
Credits: 04
End-Sem (paper): 50 Marks
CIA: 50 Marks
Prerequisite:- Fundamentals of Programming Languages
Course Objectives:
To understand the standard and abstract data representation methods.
To acquaint with the structural constraints and advantages in usage of the data.
To understand the memory requirement for various data structures.
To operate on the various structured data.
To understand various data searching and sorting methods with pros and cons.
Course Outcomes: On completion of the course, student will be able to–
To discriminate the usage of various structures in approaching the problem solution.
To design the algorithms to solve the programming problems.
To use effective and efficient data structures in solving various Computer Engineering
domain problems.
To analyze the problems to apply suitable algorithm and data structure.
To use appropriate algorithmic strategy for better efficiency
Course Contents
Unit I Introduction to Algorithm and Data Structures 08 Hours
Algorithms- Problem Solving, Introduction to Algorithms, Characteristics of algorithms, Algorithm
design tools: Pseudo code and flowchart, Analysis of Algorithms, Complexity of algorithms- Space
complexity, Time complexity, Asymptotic notation- Big-O, Theta and Omega, standard measures of
efficiency.
Data Structures- Data structure, Abstract Data Types (ADT), Concept of linear and Non-linear,
static and dynamic, persistent and ephemeral data structures, and relationship among data, data
structure, and algorithm, From Problem to Program.
Sequential Organization- Linear Data Structure Using Sequential Organization, Array as an
Abstract Data Type, Memory Representation and Address Calculation, Inserting an element into an
array, Deleting an element, Multidimensional Arrays, Two-dimensional arrays.
Unit II Stacks 07 Hours
Introduction of stack, Operations on stacks: Push & Pop, Array representation of stack, Linked
representation of stack, Application of stack, Conversion of infix to prefix and postfix expressions,
Evaluation of the postfix expression using a stack.
Recursion: Iteration and recursion with examples such as binary search, Fibonacci numbers, Use of
stack in backtracking
Unit III Queues 07 Hours
Queue: Array and linked representation, Operations on queue, Types of queue: Circular queues,
Advantages of Circular queue, Multiqueues, Dequeues and Priority queue, Linked Queue &
operations, Applications of Queue.
Unit IV Linked Lists 08 Hours
Basic concept, Representation of linked lists, Comparison of sequential & linked organizations,
Operations on linked list, linked list as ADT, Linked list using dynamic memory management, Types
of linked list: Linear, Circular linked list, Doubly linked list and operations,
Applications of linked list: Polynomial representation and addition, Polynomial addition &
Multiplication using linked list, Generalized Linked list(GLL) concept, polynomial representation &
sets using GLL.
Unit V Sorting and Searching 08 Hours
Searching- Search Techniques, Sequential search, variant of sequential search- sentinel search,
Binary search, Fibonacci search.
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.
Books:
Text:
1. Horowitz and Sahani, ―Fundamentals of Data Structures in C++, University Press, ISBN 10:
0716782928 ISBN 13: 9780716782926.
2. 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. YedidyahLangsam, 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.
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Introduction to Business Analytics
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Introduction to Business Analytics Course Code: YCA305
Theory: 03 Hrs/ Week
Credits: 03
End-Sem (paper): 50 Marks
CIA: 50 Marks
Prerequisite:-
Course Objectives:
To achieve a profound understanding of Business Intelligence (BI) systems in terms of its
tools, current practices and impacts.
Acquire knowledge on how to design BI solutions for different BI targets and users
Provide solutions, assessments and validation to a broad range of situations by eliciting,
planning, monitoring and analyzing enterprise requirements.
Course Outcomes: On completion of the course, student will be able to–
Collect, manage, and interpret data to identify trends and issues in the workplace to
create, and develop levels of measure.
Design, develop, implement, and maintain levels of measurement, accurate statistics,
requirements lists and constraint documents.
Apply basic adult learning and assessment principles in the design, development, and
presentation of training and information for differing levels within the workplace.
Demonstrate employability skills and a commitment to professionalism.
Course Contents
Unit I Business Analytics and Optimization 06 Hours
Introduction to Business Analytics and Optimization, Challenges - Volume, Variety (Diversity),
and speed of Data Creation (and needed decisions), Approaches to help maximize profitability
and returns, Business Analytics Capabilities, Enterprise Analytics Capabilities, Business
Analytics Technologies, Predictive Analytics, Prescriptive Analytics, A fact-based decision
making culture, A strong data infrastructure, The Right Analytical Tools, Analytics Workforce,
Knowledge Requirements, Business Analyst, Data Scientist, Where to put the analytics team,
IBM Business Analytics Maturity Model, Optimization, Key BAO Concepts, The need for BAO
now, Essential Capabilities In BAO, BAO Capabilities: Business Performance Management,
Predictive Analysis and Mining, Value of BAO to Business Organization, Impact of BAO on
diverse industries, Advantages to implementing BAO solutions, BAO Capabilities: Real-time
Analytics: Data In Motion, BAO support for decision-making, High level architecture of BAO,
Importance of reference architecture, BAO reference architecture, BAO reference architecture to
BAO architects, IBM Technology Portfolio for BAO.
Unit II Data Warehouse 06 Hours
Decision Support, Three-Tier Decision Support Systems, Exploring and Analyzing Data, What is
a data warehouse? Data warehouse architecture choices, Enterprise data warehouse, Independent
data mart architecture, Dependent data mart architecture, Data Warehouse, Data warehouse
usage, Multidimensional Data, Conceptual Modeling of Data Warehouses, The “Classic” Star
Schema, The “Snowflake” Schema, The “Fact Constellation” Schema, Data Warehouse Design
Process, Single-Layer Architecture, Two-Layer Architecture, Three-Tier Data Warehouse
Architecture, Data Warehouse Development, Multi-Tiered Architecture, Information pyramid,
BI reporting tool architectures, Types of BI users, Multidimensional analysis techniques, Data
Analysis and OLAP, OLAP Server Architectures, Data Cube, Discovery-Driven Data Cubes,
OLTP vs. OLAP, Business Query, Dashboards and Scorecards Development, Metadata Model,
Automated Tasks and Events, Mobile BI, Disconnected BI, Collaborative BI, Real-time
Monitoring, Software Development Kit (SDK), Setting up data for BI, Making BI easy to
consume.
Unit III Business Intelligence 06 Hours
Definitions of Business Intelligence, Sample BI Architecture, Things are getting more complex,
BI Components and Architecture, Scope and fit of BI solutions within existing infrastructure,
High Level BI Process, Functional Areas of BI Tool, A single or a few applications, Benefits of
BI, Maximize Value from BI Systems, Strategy and Business Intelligence, Business
Transformation Projects, Business Role of BI (TWDI), ASUG Business Intelligence Maturity
Model, Why Act? BI Effectiveness Scorecard, BI Value Scorecard, Five key areas of strategy,
Planning a BI Project, Pre-Engagement Activities, Engagement Activities and process, BI
Design and Development, Business Environment, Project Tasks: Task 1- Knowledge Capture
Goals - Discuss Business Objectives & Prior Learning, Interview key stakeholders, Project
Planning, Task 2 - Consolidate Findings - Create logical design, Task 3 - Map the Customer
Situation - Current Environment, Business/Functional Requirements Sample Diagram, Logical
BI Diagram, Task 4 -Methodology & Approach, Task 5 - Standards & Governance, Task 6 -
Sections, Milestones and Tasks, Task 7 – Proof of Concept (POC), Task 8 – Table Creation,
Task 9 – OLAP Creation, Task 10 –Final Deliverables, Risk management and mitigation, Cost
justification and measuring success.
Unit IV Data Mining 06 Hours
What is Data Mining, Evolution of Data Mining, Why Data Mining? Knowledge-Based System,
Data Mining Process, Phases of Data Mining Process, KDD Process Model, CRISP - DM,
CRISP-DM - Elaborate view, Data Mining – On what kinds of Data? DM Tasks and
Components of DM methods, Data mining operations, Data mining techniques, Industry
examples of application of DM, Challenges of Data Mining, Why Machine should “Learn”?
What is Machine Learning? Growth of Machine Learning, Machine Learning types,
Unsupervised learning, Reinforcement Learning.
Unit V Big Data Analytics 06 Hours
What is Big Data? Intrinsic Property of Data…it grows, A Growing Interconnected and
Instrumental World, Need for Big Data, Characteristics of Big Data, Structure of Big Data and
need for standards, Big Data Analytics Adoption, Benefits & Barrier of Big Data Analytics,
Trends for Big Data Analytics, Commoditization of Hardware Enabling New Analytics, the 5
Key Big Data Use Cases, More Ways – Wide Ranging Analytics and Techniques, Big Data
Platform and Application Frameworks, A Big Data Platform Manifesto, Use Cases for a Big
Data Platform.
Books:
Text:Introduction to Business Analytics (IBM ICE Publication)
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Data Structures Laboratory
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Data Structures Laboratory Course Code: YCA312
Theory: -- Hrs/ Week
PR: 04 Hours/Week
Credits: 02
Practical : 25 Marks
Term Work : 25 Marks
Guidelines for Assessment
Continuous assessment of laboratory work is 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, innovation, efficient codes,
punctuality and neatness.
Guidelines for Laboratory Conduction
The instructor is expected to frame the assignments by understanding the prerequisites, technological
aspects, utility and recent trends related to the topic. The assignment framing policy need to address
the average students and inclusive of an element to attract and promote the intelligent students. The
instructor may set multiple sets of assignments and distribute among batches of students. It is
appreciated if the assignments are based on real world problems/applications. Encourage students for
appropriate use of Hungarian notation, Indentation and comments. Use of open source software is
encouraged.
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.
Set of suggested assignment list is provided in three groups. Each student must perform at least 13
assignments as at 05 compulsory from group A, 07 from group B and 01 from group C
Operating System recommended : 64-bit Open source Linux or its derivative
Programming tools recommended: Open Source C Programming tool like GCC
Suggested List of Laboratory Assignments
Group A (Compulsory Assignments)
1. Write a program to perform Set operations - Union, Intersection, Difference, Symmetric
Difference etc.
2. Write a program to perform various string operations such as Copy, Length, Reversing,
Palindrome, and Concatenation and to find occurrence substring etc with and without using
library functions.
3. Write a program to perform following operations on any database: Add, Delete, Modify,
Display, Search & Sort etc.
4. Implement Sorting Methods using functions- Bubble Sort, Selection Sort and Insertion Sort.
5. Implement Searching Methods-Sequential Search and Binary Search.
Group B (Any 7)
1. Implement Sorting Methods using recursion- Quick Sort and Merge Sort.
2. Represent polynomial using structures and write a menu driven program to perform Addition,
Multiplication and Evaluation.
3. Write a menu driven program to perform following operations on SLL/CDLL: Create, Insert
– Start, end, between, Search & delete, Reverse, Display etc.
4. Create two Singly Linked lists, sort one after creation and one while creation using Pointer
manipulation. Merge these two lists into one list without creating a new node or swapping of
the data.
5. Represent a polynomial using Circular Linked List and write a menu driven program to
perform Addition, Multiplication and Evaluation.
6. Implement Stack as an ADT using Array. Use this ADT to perform expression conversion
and evaluation (infix to postfix, infix to prefix, prefix to infix, prefix to postfix, postfix to
infix and postfix to prefix).
7. Represent Circular Queue using Linked List and write a program to perform operations like
Insert, Delete, Finding front and rear element.
8. Write a program for simulating job queue. Write functions to add job and delete job from
queue.
9. Write a program for linked implementation of Stack & Queue.
10. Pizza parlor accepting maximum M orders. Orders are served in first come first served basis.
Order once placed cannot be cancelled. Write C++ program to simulate the system using
circular queue using array.
Group C (Any 1)
1. Write a program to store roll numbers of student in array who attended training program in
random order. Write function for- a) Searching whether particular student attended training
program or not using linear search and sentinel search. b) Searching whether particular
student attended training program or not using binary search and Fibonacci search.
2. 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.)
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Object Oriented Programming Laboratory
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Object Oriented Programming
Laboratory
Course Code: YCA311
Theory: -- Hrs/ Week
PR: 04 Hours/Week
Credits: 02
Practical : 25 Marks
Term Work : 25 Marks
Guidelines for Assessment
Continuous assessment of laboratory work is 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, innovation, efficient codes,
punctuality and neatness.
Guidelines for Laboratory Conduction
The instructor is expected to frame the assignments by understanding the prerequisites, technological
aspects, utility and recent trends related to the topic. The assignment framing policy need to address
the average students and inclusive of an element to attract and promote the intelligent students. The
instructor may set multiple sets of assignments and distribute among batches of students. It is
appreciated if the assignments are based on real world problems/applications. Encourage students for
appropriate use of Hungarian notation, Indentation and comments. Use of open source software is
encouraged.
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.
Set of suggested assignment list is provided in three groups. Each student must perform at least 13
assignments as at 05 compulsory from group A, 07 from group B and 01 from group C
Operating System recommended : 64-bit Open source Linux or its derivative
Programming tools recommended: Open Source C++ Programming tool like G++/GCC
Suggested List of Laboratory Assignments
Group A (Compulsory Assignments)
1. Create class Student having Roll_No. and Name member variable and get_data () and
put_data() member functions. Take values for member variables through member functions
and print those values by calling member functions through object.
2. Create any one class and demonstrate the use of static member variable and static member
functions.
3. Write a program to display name and age of five managers using array of objects.
4. Write a program to demonstrate the use of friend function within class.
5. Write a program containing Default Constructor, Parameterized Constructor, and Destructor.
Group B (Any 7)
1. Write a program to sort the numbers in an array using separate functions for read, display,
sort and swap.
2. Write a program to perform addition, subtraction, multiplication and division operations on
complex numbers.
3. Write a program to implement database of persons using inheritance which have different
profession e,g. engineer, doctor, student, laborer etc.
4. Write a program to perform addition, subtraction, multiplication and division operations on
complex numbers using operator overloading.
5. Write a program using Constructors and destructors to implement Stack. Design the class for
stack and the operations to be performed on stack.
6. Write a program in C++ to handle the “Divide by zero” exception.
7. Write a program in C++ using the open(), eof() and getline() member functions to open and
read file content line by line.
8. Write a program in C++having class Number which has inline function mult() and cube() for
calculating the multiplication of 2 double numbers given and cube of the integer number
given.
9. Write a program in C++ for bubble sort using function template.
10. Write a program in Java with class Rectangle with the data fields width, length, area and
colour. The length, width and area are of double type and colour is of string type. The
methods are get_length(), get_width(), get_colour() and find_area(). Create two objects of
Rectangle and compare their area and colour. If the area and colour both are the same for the
objects then display “Matching Rectangles”, otherwise display “Non-matching Rectangle”.
Group C (Any 1)
1. Write a program using STL to perform operation on stack/queue.
2. Write a Program in C++ to create person bio-data using following classes i) Personal data
ii))Professional data iii) Academic data Assume your own data variables and member
functions to accept required data & print bio-data in table format.
Note: - Use multiple inheritance using C++.
Sandip University, Nashik
School of Engineering
Second Year of Computer Science and Engineering (with specialization in
Business Analytics and Optimization) (2017 Course)
Seminars on Business Analytics
School: Engineering & Technology Programme: B.Tech
Year: Second Year Semester – I
Course: Seminars on Business Analytics I Course Code: YCA305
Theory: -- Hrs/ Week
PR: 02 Hours/Week
Credits: 02
CIA : 50 Marks
Prerequisite:- Analytical Skills
Course Objectives:
To explore the basic principles of communication (verbal and non-verbal) and active,
Empatheticlistening, speaking and writing techniques.
To expose the student to new technologies, researches, products, algorithms,servicesCourse
Outcomes:
On completion of the course, student willbe able to:
Be familiar with basic technical writing concepts and terms, such as audience analysis, jargon,
format, visuals, and presentation.
Be able toimprove skills to read, understand, and interpret material on technology.
Improve communication and writing skills.
Course Contents Seminars and Workshops on emerging trends in business analytics will be conducted by IBM
trainer.