MCA (2nd Semester)
Theory
MCC201 Data Structure Using 'C'
MCC202 Computer Architecture & Organization
MCC203 Object Oriented Programming Using C++
MCC204 Theory Of Computation
MCC205 Computer Based Numerical Methods
MCC206 Business Communication
Practicals
MCL207 Communicative Practice Lab - II
MCL208 Data Structure Using 'C' Laboratory
MCL209 Object Oriented Programming With C++ Laboratory
Theory
MCC201 Data Structure Using 'C'
Module - I
Data structure and C: Functions, storage structures for arrays, sparse matrices, strings, pattern matching, structures and arrays of structures, Abstractio Mechanisms, Abstract data type, Stacks and Queues: representation and Applications.
Linked Lists: Singly linked lists, Linked stacks and queues, Operation on polynomial, Lnked dictionary, Doubly linked list, Circular linked list, Doubly circular linked lists,
Module-II
Dynamic storage Management, Garbage collection and compaction, Hashing functions. Hash tables and collision resolution techniques.
Trees: Binary trees, Terminologies and memory representation, Binary search trees, General trees, Tree traversing, Operations on binary trees, - Expression manipulations, Threaded binary trees, Height balancing trees, Heaps, forest, File structures, Introduction to multi-way search trees, B-tree and B+-trees.
Module - III
Graphs: Terminologies and representation, Path matrix, graph traversal,- DFS and BFS, shortest path problems, Bi-connected graphs, Topological sort.
Sorting techniques: Bubble sort, selection sort, Insertion sort, Merge sort, Quick sort, Heap sort, Radix sort, Shell sort and address calculation sort, Linear search and binary search.
Text Books:
- Richard Gilberg, Behrouz A. Forouzan, "Data Structures: A pseudo code approach with C", Second Edition, 2007, CENGAGE India Pvt. Ltd., New Delhi.
- G.A. V. Pai, " Data Structure and Algorithms", McGraw Hills Education India
Reference Books:
- Alfred V. Aho, John E. Hopcropt & Jeffrey D. Ullman,"Data Structures and Algorithm", First Edition, 1983, Pearson Education Inc., New Delhi.
- Ian Chai & J. White, "Structuring data and building Algorithms", McGraw Hill Education India
- Aaron M. Tenenbaum, Yedidyah Langsam & Moshe J. Augenstein, "Data Structure Using C", 1st Edition, 1990, Prentice-Hall of India (PHI) Pvt. Ltd., / Pearson Education Inc., New Delhi.
- Ellis Horowitz, Sartaj Sahni, Susan Anderson-Freed, "Fundamentals of Data Structures in C", Second Edition, 2008, Universities Press Pvt. Ltd. Hyderabad.
MCC202 Computer Architecture & Organization
Module - I
Introduction:
Basic architecture of computer, Functional units, Operational concepts, Bus structures, Von Neumann Concept.
Basic Processing:
Instruction code, Instruction set, Instruction sequencing, Instruction
cycle, Instruction format, Addressing modes, Micro instruction, Data path, Hardwired controlled unit, Micro programmed controlled unit.
Arithmetic:
Design of ALU, Binary arithmetic, Addition and Subtraction of signed number, Multiplication of Positive number, Signed operand multiplication, Division, Floating point number representation and arithmetic.
Module - II
Memory:
Memory Hierarchy, RAM, ROM, Cache memory organization, Mapping techniques, Virtual memory, Mapping technique, Associative memory, Memory Interleaving, Secondary Storage, Flash drives.
Module - III
Input/Output:
Accessing I/O devices, I/O mapped I/O, Programmed I/O, Memory Mapped I/O, Interrupt Driven I/O, Standard I/O interfaces, Synchronous and Asynchronous Data transfer, DMA data transfer. Introduction to Parallel processing: Flynn's Classification, Pipelining, Array processing, vector processing
Text Books:
- Rajaraman, and T. Radhakrishnan, " Computer Organization and Architecture", Prentice-hall of India
- M. Murdocca," Computer Architecture and Organization- An Integrated Approach", Willey India Pvt Ltd
Reference Books:
- William Stalling , " Computer Organization and Architecture "Pearson Education
- J. P. Hayes "Computer Architecture and Organization" McGraw Hill Education India.
- Carl Hamacher, Zvonko Vranesic, Safwat Zaky, "ComputerOrganization", 5th
Edition, Mc Graw-Hill Education India
- A.S. Tananbaum "Structured Computer Organization" Pearson Education.
MCC203 Object Oriented Programming Using C++
Module - I
Introduction to C++ :
C++ as multi-paradigm language, features supported by C++, syntax, data-type, const and bool qualifiers, variables, strings, operators
Control Structures, Decision and Loop Control Statements, Modular program design using functions, Top down program design with examples, parameter passing mechanisms, inline functions, recursion, Arrays and pointers, dynamic arrays, structures and unions in C++, Coding Style in C++
Object Oriented Programming in C++: Abstraction, OOP concepts, software life cycle, Abstraction Mechanisms: Procedural Abstraction and data abstraction; Classes and objects, object creation, access specifier-private, public and protected, constructors, default constructors, copy constructors, destructors, member functions, static members, references; Message communication using objects
Module - II
Classes, Multiple inheritance, multileveled and hybrid inheritance, Abstract Base Classes, Composition and aggregation with example, polymorphism-compile time & run time polymorphisms, object slicing, base class initialization, virtual functions and Dynamic Binding.
Overloading: Function overloading and Operator overloading, ambiguity, Overloading Restriction, friends function, member operators, operator function, I/O operators, Automatic Conversions and Type Casts for Classes, Memory management in C++: new, delete, object copying- deep & shallow copy, this pointer
Module - III
Exception Handling Mechanisms: Exceptions and exception class, exception declarations, unexpected exceptions, RTTI, Calling abort(), Returning an Error Code, Exception Mechanism, Using Objects as Exceptions
Templates and Standard Template Library (STL): Generic Programming in C++, Template classes, declaration, Template functions, Template Classes and Friends, Namespaces and separate compilation; String class, Containers, Iterators, Vectors
Files in C++: Buffers, and the iostream File, redirection, streams and I/O streams classes, File Input and Output, Stream Checking and is_open(), Opening Multiple Files, Command-Line Processing, File Modes
Text Books:
- B.A. Forouzan & R. F. Gilberg, " Astructured approach using C++", CENGAGE learning India
- E. Balguruswamy. Object-Oriented Programming with C++, 3rd Edition, 2007, Tata McGraw-Hill (TMH) Publication Pvt. Ltd., New Delhi.
Reference Books:
- David Parsons, "Object-Oriented Programming with C++", , Pearson Education .
- H. Schild, "A complete reference to C++", TMH
- Walter Savitch, "Absolute C++", 2nd Edition, 2007, Pearson Education Inc., New Delhi.
- Stephen Prata," C++ Primer plus", Pearson Education
MCC204 Theory Of Computation
Module - I
Introduction of Automata, Computability, and Complexity ; Mathematical notations and terminology; Finding proofs and types of proofs.
Finite Automata and regular languages: Formal definitions, Designing finite automata, Deterministic finite automata, Non-deterministic finite automata, Equivalence of NFAs and DFAs, finite automata with e-transition; regular expressions and languages, Properties of Regular languages, conversion of RE to FA and vice versa.
Module - II
Push down Automata and Context free languages: Context free grammars, Designing context free grammar, Ambiguity in CFG and its removal, Chomsky normal form
Push down Automata: formal definition, graphical notations, Languages accepted by PDA, Equivalence of PDA and CFG, Non-context free languages
Module - III
Turing Machines and Computability: Formal definition of Turing machines with examples, Graphical notations, Variants of Turing machines, Church-Turing thesis, Hilbert's problem
Decidability, undecidability and reducibility: Decidable languages; Decidable problems concerning regular languages and context free languages, The halting problem, Post correspondence problems, Undecidable problems, Mapping reducibility, Decidability of logical theories, Turing reducibility.
Recommended Texts:
- Michael Sipser, "Introduction to the Theory of Computation", Second Edition, 2007, CENGAGE learning India Pvt. Ltd., New Delhi.
- John E. Hopcroft, Rajeev Motwani & Jeffrey D. Ullman, "Introduction to Automata Theory, Languages, and Computation", Third Edition, 2007, Pearson Education Inc., New Delhi.
Reference Books:
- Nasir S.F.B., P.K. Srimani " A text book on Automata Theory", Cambridge University press India Pvt. Ltd.
- Peter Linz, "An Introduction to Formal Languages and Automata", Fourth Edition, 2007, Narosa Publishing House, New Delhi.
- John C. Martin, "Introduction to Languages and the Theory of Computation", Third Edition, 2003, Tata McGraw-Hill (TMH) Publication Pvt. Ltd., New Delhi
- Thomas A. Sudkamp, "Languages and Machines: An Introduction to the Theory of Computer Science", Third Edition, 2006, Pearson Education Inc., New
MCC205 Computer Based Numerical Methods
Module - I
Errors and approximations in Numerical Computation, sources of errors, significant digits, Numerical solution of algebraic and transcendental equations by simple iteration method, Bisection method, Regula-falsi method (method of false position), Newton-Raphson method and their rate of convergence.
Solution of simultaneous linear system of equations by Cramer's Rule, Stability, ill conditioning, Gauss- elimination method, Gauss-Jordan method, Matrix inversion by Gauss-Jordan method, Iterative method for solving linear equations by Gauss-Jacobin and Gauss-Seidel method, Methods for solution of Eigen value problems.
Module - II
interpolation formula, divided differences, Newton's divided difference formula, Inverse interpolation.
Numerical differentiation based on Newton's forward and backward interpolation formula, Numerical integration by Trapezoidal rule, Simpson's 31 rd rule (with linear multiple application), Simpson's 83 rule, error estimates of the rules, Gaussian quadrature formulae (2-point,3-point and 4-point).
Module - III
Numerical solution of ordinary differential equation using Taylor Series method, Euler method, Modification of Euler's method, Picard's method, Runge-Kutta method of order two and four, Predictor-Corrector methods.
Recommended Text Book:
- S. Rajasekaran, "Numerical methods in Science and Engineering: a practical approach", S. Chand and company Ltd., New Delhi.
- T. Veerarajan and T. Ramachandran, "Theory and problems in Numerical methods", Tata McGraw-Hill Publications, New Delhi.
Reference Books:
- W. Chenny and D. Kincaid, "Numerical Mathematics and Computing", CENGAGE publication
- J. H. Mathews, " Numerical methods for Mathematics, Science and Engineering", PHI publication
MCC206 Business Communication
Module -I The Elements of Business Communication
- horizontal, grapevine etc
- internal and external channels of communication; formal and informal
channels
- cross-cultural communications
- avoiding gender, racial and other forms of bias in communication
- common forms of oral and written communication in the business world:
Oral presentations, interviews and group discussions
Memos, reports, summaries and abstracts, e-mails
Module-II Reading and writing
- The importance of developing reading skills
- the sub-skills of reading :
- understanding the main idea and supporting details
- reading between the lines : inferential reading
- understanding the writer's point of view
- making predictions
- guessing the meanings of unfamiliar words
- skimming and scanning
- note-making
- the importance of writing skills
- the differences between speech and writing
- the qualities of effective writing : coherence, cohesion, logical structuring and organization, clarity of language, stylistic variation etc.
- the writing process : pre-writing, drafting, re-writing
Module -III Personality development and soft skills
- personality theories: Carl Rogers, Maslow, Eysenck, Murray
- emotional Intelligence
- lateral thinking: Edward De Bono
- soft skills: becoming a good leader and team-player
- inter-relating soft skills and communication skills
Books Recommended:
- Business Communication Today by Bovee et al ( Pearson)
- Business Communication by Meenakshi Raman and Prakash Singh (Oxford)
- Personality : Classic Theories and Modern Research by H.S.Friedman and
M.W.Schustack ( Pearson Education)
- Personality Theories by Barbara Engler (Houghton Mifflin Company)
- Crash Course in Personal Development by Brian Clegg ( Kogan Page)
- Activities for Developing Emotional Intelligence by Adele B.Lynn (HRDPress)
- Lateral Thinking by Edward De Bono (Penguin)
Practicals
MCL207 Communicative Practice Lab - II
- Communication Practice 30 hours
- Speaking : oral communication in social and 10 hours
Work-related situations, e.g.:
Greeting an acquaintance/ friend, introducing oneself, introducing a friend to another friend, breaking off a conversation politely, leave-taking;
making and responding to inquiries; expressing an opinion;
expressing agreement/ disagreement, contradicting/ refuting an argument;
expressing pleasure, sorrow, regret, anger, surprise, wonder, admiration,
disappointment etc.
Narrating or reporting an event;
Describing people, objects, places, processes etc.
Ordering / directing someone to do something
Making requests; accepting / refusing a request
Expressing gratitude; responding to expressions of gratitude
Asking for or offering help; responding to a request for help
Asking for directions (e.g. how to reach a place, how to operate a device etc.) and giving directions
asking for and granting/ refusing permission
prohibiting someone from doing something
suggesting, advising, persuading, dissuading, making a proposal
praising, complimenting, felicitating
expressing sympathy (e.g. condolence etc.)
Complaining, criticizing, reprimanding
- Reading 10 hours
Students will be given practice in reading and comprehending 6-8 simple passages of 100-300 words each, on topics of general as well as professional interest. The texts will be supported by suitable exercises designed to foster comprehension skills and vocabulary enrichment, together with study skills (note making) and reference skills (using a dictionary).
Practice will be provided in the important sub-skills of reading which are introduced in
Module 2 of the theory component.
- Writing 10 hours
Writing short paragraphs on given topics or topics of one's choice; social and
business letters; reports; applications ; resumes ; summaries
The principles of 'Process Writing' should be used to teach writing skills.
- pre-writing : generating ideas, brain-storming, idea mapping, outlining
- writing : generating a first draft ; reviewing, redrafting, editing
- post-writing : making a presentation ; discussion and feedback, preparing the final draft.
- Soft skills practice 10 hours
Activities designed to highlight leadership and 'team' skills ; Group discussion
MCL208 Data Structure Using 'C' Laboratory
- Matrix Operations-Add, Multiply, Rank, Det.etc.
- Stack & Queue operations using Arrays.
- Self-referential structures & single linked list operations.
- Implementing Stack and queues using linked lists.
- Implementing Polish Notations using Stacks.
- Circular and double linked list operations.
- Implementing priority queue & dequeue using lists.
- Evaluating polynomial operations using Linked lists.
- Implementing set related operations & Hashing.
- linear & binary search, bubble sort technique.
- Insertion sort, selection sort & merge sort techniques.
- Quick sort, counting sort and Shell sort techniques.
- Radix (bucket) and address calculation sort methods.
- Binary tree traversals (preorder, inorder, postorder).
- Heap sort & AVL tree implementations.
- Graph representation with matrix & adjacency lists.
MCL209 Object Oriented Programming With C++ Laboratory
- Implementing classes and creation of objects.
- Checking Precedence of operators & side effects.
- Implementing various control structures & loops.
- Making structured programming & stepwise refinement.
- Implementing Procedural abstraction with functions.
- Implementing Constructors and destructors.
- Implementing Data abstraction & inheritance.
- Implementing Multiple & hybrid inheritance.
- Implementing Polymorphism concepts.
- Implementing Operator overloading & friend's functions.
- Working with new & delete, object copying.
- Implementing Object slicing, this operator.
- Exception handling mechanisms.
- Implementing class templates & function templates.
- Working with STL.
- Creating files in C++ and file related operations.