Syllabus For Computer Science
Syllabus For Computer Science
COMPUTER SCIENCE
(MAJOR)
Periods/Week
Exam. Marks
Paper Code
Semester
Credits
Year
Paper
Attendance
Internal
MAJ1 Digital Design and Analysis 3 3 40 10 5
MAJ1L Digital Design and Analysis (Lab) 1 4 20 - -
MAJ2 Programming in C 3 3 40 10 5
MAJ2L Programming in C (Lab) 1 4 20 - -
SEC1 E1- MS Excel 2 2 40 10 5
E2-Basic Programming in Python
SEC1L E1- MS Excel (Lab) 1 2 20 - -
E2-Basic Programming in Python (Lab)
I MIN1 Student has to choose only ONE 4 4 40 10 5
discipline from the subjects given below: /60
1. Physics
2. Mathematics
3. Statistics
4. Economics
5. Geography
VAC1 Student has to choose only ONE 4 4 60 10 5
discipline from the subjects given below:
1. Environmental Education (EE)
MAJ3 Discrete Structures 3 3 60 10 5
MAJ3T Discrete Structures (Tutorial) 1 1 - - -
MAJ4 Object Oriented Programming Using Java 3 3 40 10 5
1st Year
NOTE:
1. Tutorials should involve problem solving session/activity related to the subject taught.
1st Year
Semester-I
Course-MAJOR Paper Code-MAJ1 Credits-3 Lectures/Week-3
Paper: Digital Design and Analysis
Course Objectives
Knowledge acquired:
(1) Basic knowledge of digital logic and digital circuits,
(2) Overall idea about how computers function and the internal building blocks of a computer.
(3) Knowledge about how operations are performed in a computer
(4) A thorough understanding of the fundamental concepts and techniques used in digital
electronics.
Skills gained:
(1) Application of the knowledge of digital logic to understand digital electronics circuits.
(2) The ability to understand, analyze and design various combinational and sequential circuits.
(3) To understand and examine the structure of various number systems and its application in digital
design.
Competency Developed:
(1) Ability to identify basic requirements for a design application and propose a cost effective
solution.
(2) The ability to identify and prevent various hazards and timing problems in a digital design.
(3) Ability and skill to develop/build, and troubleshoot digital circuits.
Syllabus Overview
Suggested Readings
1. Rajaraman V. & Radhakrishnan, An Introduction To Digital Computer Design, PHI.
2. Malvino & Leach, Digital Principles & Applications, TMH
3. S. Salivahanan, S. Arivazhagan, Digital Circuits and Design, Oxford University Press
Course Objectives
Knowledge acquired:
(1) Knowledge about program development and implementation
(2) Syntax of C programming language
(3) Knowledge about how humans interact with computers through a language.
Skills gained:
(1) Problem solving skills
(2) Logical thinking to approach a problem
(3) Building programs for different problems at hand.
Competency Developed:
(1) Applying the skills learnt to model real world problems
(2) Facility in solving real life problems by thinking logically and outside of box.
(3) Ease of switching to any other programming language
Syllabus Overview
Unit 1: Introduction to C, Data Types, Variables and Operators 6 Lectures
History of C, Overview of Procedural Programming, Introduction to Algorithm & Flowcharts. Using
main() function Compiling and Executing Simple Programs in C. Declaring, Defining and Initializing
Variables, Scope of Variables, Using Named Constants, Keywords, Data Types, Casting of Data
Types, Operators (Arithmetic, Logical and Bitwise), Using Comments in programs, Character I/O
(getc, getchar, putc, putchar etc), Formatted and Console I/O (printf(), scanf()) , Using Basic Header
Files (stdio.h, iostream.h, conio.h etc).
Suggested Readings
1."The C Programming Language ANSI C Version", Kernighan & Ritchie, Prentice
Hall Software Series
2. "ANSI C - Made Easy", Herbert Schildt, Osborne McGraw-Hill
3. "Learning to Program in C", N. Kantaris, Babani
4. "C - The Complete Reference", Herbert Schildt, Osborne McGraw-Hill
5. "Programming in C", Reema Thareja, Oxford University Press
6. "A First Course in Programming With C", T. Jeyapoovan, Vikas Publishing House
7. "Let Us C", Yashavant P. Kanetkar, BPB Publications
Students are advised to do laboratory/practical practice not limited to, but including the following
types of problems:
1. WAP to perform input/output of all basic data types.
2. WAP to enter two numbers and find their sum.
3. WAP to reverse a number.
4. WAP to Swap Two Numbers (using and without using a third variable).
5. WAP to check whether a number is even or odd
6. WAP to compute the factors of a given number.
7. WAP to enter marks of five subjects and calculate total, average and percentage.
8. WAP to print the sum and product of digits of an integer.
9. WAP to check whether a character is vowel or consonant
10. WAP to find the largest among three numbers
Course- SEC Paper Code-SEC1 E1 Credits-3 Lectures/Week-3
Paper: MS Excel
Course Objectives
Knowledge Acquired:
(1) Formulas and Functions: Students learn various Excel formulas and functions such as SUM,
AVERAGE, and IF statements, enabling them to perform complex calculations efficiently.
(2) Data Management Techniques: They gain knowledge of sorting, filtering, and organizing data
effectively within Excel spreadsheets, including techniques like data validation and conditional
formatting.
(3) Data Analysis Tools: Students acquire an understanding of Excel's data analysis tools like pivot
tables, charts, and what-if analysis, empowering them to derive insights and make data-driven
decisions.
Skills Gained:
(1) Data Manipulation: Students develop skills in manipulating data, including tasks like merging
cells, splitting data, and removing duplicates, enhancing their ability to clean and format datasets.
(2) Charting and Visualization: They learn to create visually appealing charts and graphs, mastering
skills to represent data in a meaningful and comprehensible manner.
(3) Automation and Macros: Students acquire skills in automating repetitive tasks through macros,
increasing productivity and efficiency in handling large datasets.
Competency Developed:
(1) Problem-Solving: Through solving various real-world data management and analysis challenges,
students enhance their problem-solving abilities within Excel, learning to devise efficient
solutions.
(2) Attention to Detail: Working extensively with data requires meticulous attention to detail to avoid
errors. Students develop this competency through tasks like data validation and auditing.
Collaboration and Communication: Excel often serves as a collaborative tool in professional settings.
Students learn to collaborate effectively on spreadsheets and communicate their findings clearly
through the use of Excel's sharing and commenting features.
Syllabus Overview
Suggested Readings
1.“Excel 2019 Bible Paperback”, Michael Alexander (Author), Richard Kusleika (Author), John
Walkenbach (Author)
2.“Excel for Beginners (Excel Essentials Book 1)”, M.L. Humphrey (Author)
3.“Ctrl+Shift+Enter Mastering Excel Array Formulas: Do the Impossible with Excel Formulas
Thanks to Array Formula Magic”, Mike Girvin (Author)
Students are advised to do laboratory/practical practice not limited to, but including the following
types of problems:
1. Create a workbook and enter the raw data applying as many presentation Features (Font, Font
Size, Font Colour, Number Formats and Colour, Cell Shading, Text Rotation, etc)
2. Apply appropriate number formats to your numbers.
3. Select the best page orientation for your spreadsheet.
4. Adjust the column width and row height to suit the layout you have selected.
5. Create formula's to calculate the percentage of the total number of people
6. Setup an appropriate title, header, footer and page number in your spreadsheet.
7. Create the following Table in Excel with given details :-
RollNo, Name, Math, English, Science, Total Result, Division
Course- SEC Paper Code-SEC1 E2 Credits-3 Lectures/Week-3
Paper: Basic Programming in Python
Prerequisite(s) and/or Note(s):
(1) High school mathematics.
(2) Note(s): Syllabus changes yearly and may be modified during the term itself, depending on the
circumstances. However, students will be evaluated only on the basis of topics covered in the
course.
Course Objectives
Knowledge Acquired:
(1) Fundamental Concepts: Students acquire knowledge of fundamental programming concepts
such as variables, data types, loops, conditionals, and functions in Python.
(2) Data Structures: They learn about essential data structures like lists, tuples, dictionaries, and
sets, understanding their usage and implementation.
Skills Gained:
(1) Coding Proficiency: Through hands-on practice and assignments, students develop coding
proficiency in Python, enabling them to write clear, concise, and functional code.
(2) Problem-Solving: They enhance their problem-solving skills by applying Python
programming concepts to solve various computational problems and algorithms.
(3) Debugging and Troubleshooting: Students acquire skills in debugging code and
troubleshooting errors, learning how to identify and fix common programming mistakes
effectively.
Competency Developed:
(1) Logical Thinking: Python programming exercises require logical thinking and algorithmic
problem-solving skills, helping students develop a logical mindset.
(2) Attention to Detail: Writing code necessitates attention to detail to ensure accuracy and
functionality. Students develop this competency through debugging and code review
processes.
(3) Collaboration and Documentation: Students learn to collaborate on coding projects using
version control systems like Git and to document their code effectively, enhancing their ability
to work in teams and communicate technical concepts clearly.
Syllabus Overview
Suggested Readings
1.T. Budd, Exploring Python, TMH, 1st Ed, 2011
2.Python Tutorial/Documentation www.python.or 2015
3.Allen Downey, Jeffrey Elkner, Chris Meyers , How to think like a computer scientist : learning
with Python , Freely available online. 2012
4.http://docs.python.org/3/tutorial/index.html
5.http://interactivepython.org/courselib/static/pythonds
6. http://www.ibiblio.org/g2swap/byteofpython/read/
3.Write a menu-driven program, using user-defined functions to find the area of rectangle,
square, circle and triangle by accepting suitable input parameters from user.
4.WAP to display the first n terms of Fibonacci series.
5.WAP to find factorial of the given number.
6.WAP to implement the use of arrays in Python.
7.WAP to implement String Manipulation in python in Python.
8.WAP to find sum of the following series for n terms: 1 – 2/2! + 3/3! - - - - - n/n!
1st Year
Semester-II
Course-MAJOR Paper Code-MAJ3 Credits-3 Lectures/Week-3
Paper: Discrete Structures
Course Objectives
Knowledge acquired:
(1) Basic knowledge of discrete mathematics and discrete structures,
(2) To develop understanding of Logic sets and functions
(3) Knowledge of mathematically correct terminology and notations.
(4) Knowledge about construction of direct and indirect proofs.
Skills gained:
(1) Development of problem-solving skills necessary for understanding counting problems.
(2) Ability to generalize from a single instance of a problem an entire class of problems and
identification of patterns of data.
Competency Developed:
. (1) Ability to analyze problems and solve problems.
(2) Ability to implement mathematical knowledge in data analysis..
Syllabus Overview
Unit 1: Introduction 10 Lectures
Sets - finite and Infinite sets, uncountably Infinite Sets; functions, relations, Properties of Binary
Relations, Closure, Partial Ordering Relations; counting - Pigeonhole Principle, Permutation and
Combination; Mathematical Induction, Principle of Inclusion and Exclusion.
Suggested Readings
1.C.L. Liu , D.P. Mahopatra, Elements of Discrete mathematics, 2nd Edition , Tata McGraw Hill,
1985,
2.Kenneth Rosen, Discrete Mathematics and Its Applications, Sixth Edition ,McGraw Hill 2006
3.T.H. Coremen, C.E. Leiserson, R. L. Rivest, Introduction to algorithms, 3rd edition Prentice Hall
on India, 2009
4.M. O. Albertson and J. P. Hutchinson, Discrete Mathematics with Algorithms , John wiley
Publication, 1988
5.J. L. Hein, Discrete Structures, Logic, and Computability, 3rd Edition, Jones and Bartlett Publishers,
2009
6.D.J. Hunter, Essentials of Discrete Mathematics, Jones and Bartlett Publishers, 2008
7.Discrete Mathematical Structures with Applications to Combinatorics, V Ramaswamy, University
Press
8.Discrete Mathematics: A Concept-based Approach, Basavaraj S Anami, Venkanna S Madalli,
University Press
Course Objectives
Knowledge acquired:
(1) Understanding of Object-Oriented Concepts: Students will acquire knowledge of fundamental
Object-Oriented Programming (OOP) concepts such as classes, objects, inheritance,
polymorphism, and encapsulation. They'll grasp the theoretical underpinnings of these concepts
and their practical applications in software development.
(2) Java Syntax and Language Features: Through hands-on coding exercises and projects, students
will become proficient in Java syntax, learning about data types, control flow structures, and
exception handling. They'll understand how to write Java programs that follow best practices and
adhere to industry standards.
(3) Software Design Principles: The course will equip students with knowledge of software design
principles like SOLID principles, design patterns, and anti-patterns. They'll learn how to architect
well-structured, maintainable, and extensible software systems using object-oriented design
principles.
Skills gained:
(1) Programming Proficiency: Students will develop practical programming skills in Java, including
the ability to write, compile, and execute Java programs independently. They'll gain confidence in
coding by solving progressively challenging programming problems and implementing real-world
applications.
(2) Debugging and Troubleshooting: Through debugging exercises and code reviews, students will
learn how to identify and fix errors in Java code effectively. They'll develop skills in using
debugging tools and techniques to diagnose and resolve software issues efficiently.
Competency Developed:
(1) Problem-Solving Skills: Students will enhance their problem-solving abilities by applying object-
oriented principles to solve complex programming problems. They'll learn how to break down
problems into smaller, manageable components and devise elegant solutions using OOP concepts.
(2) Critical Thinking and Analysis: The course will foster students' ability to critically evaluate
software designs and code implementations. They'll learn to analyze trade-offs, identify design
flaws, and propose alternative solutions, honing their critical thinking skills essential for software
development.
(3) Software Development Practices: By working on practical projects, students will develop
competency in software development practices such as unit testing, code documentation, and code
refactoring. They'll understand the importance of writing clean, readable, and maintainable code,
preparing them for careers in software engineering or further academic pursuits in computer
science.
Syllabus Overview
Exception types, uncaught exceptions, throw, built-in exceptions, Creating your own exceptions;
Multi-threading: The Thread class and Runnable interface, creating single and multiple threads,
Thread prioritization, synchronization and communication, suspending/resuming threads. Using
java.net package, Overview of TCP/IP and Datagram programming. Accessing and manipulating
databases using JDBC.
Students are advised to do laboratory/practical practice not limited to, but including the following
types of problems:
1. To find the sum of any number of integers entered as command line arguments
2. To find the factorial of a given number
3. To learn use of single dimensional array by defining the array dynamically.
4. To learn use of “.length” in case of a two dimensional array
5. To convert a decimal to binary number
6. To check if a number is prime or not, by taking the number as input from the keyboard
7. To find the sum of any number of integers interactively, i.e., entering every number from the
keyboard, whereas the total number of integers is given as a command line argument
Course- SEC Paper Code-SEC2 E1 Credits-2 Lectures/Week-2
Paper: Cyber Security
Prerequisite(s) and/or Note(s):
(1) High school mathematics.
(2) Note(s): Syllabus changes yearly and may be modified during the term itself, depending on the
circumstances. However, students will be evaluated only on the basis of topics covered in the
course.
Course Objectives
Knowledge Acquired:
(1) Cyber threats landscape understanding.
(2) Principles of cryptography comprehension.
(3) Network security protocols familiarity.
Skills Gained:
(1) Ethical hacking techniques application.
(2) Security assessment tools utilization.
(3) Incident response plan development.
Competency Developed:
(1) Risk assessment proficiency.
(2) Security policy formulation expertise.
Communication of security concepts clarity.
Syllabus Overview
Suggested Readings
1. "Cybersecurity for Dummies" by Chey Cobb.
2. “Computer Hacking Beginners Guide” by Alan T. Norman
Course-SEC Paper Code-SEC1T E1 Credits-1 Tut. hours/Week-1
Paper: Cyber Security (Tutorial)
Course Objectives
Knowledge Acquired:
(1) Presentation design principles understanding.
(2) MS PowerPoint interface familiarity.
(3) Slide layout and formatting comprehension.
Skills Gained:
(1) Slide creation and editing proficiency.
(2) Visual content insertion capability.
(3) Animation and transition application skill.
Competency Developed:
(1) Effective presentation delivery competency.
(2) Audience engagement techniques mastery.
(3) Time management during presentations efficiency.
Syllabus Overview
Students are advised to do laboratory/practical practice not limited to, but including the following
types of problems:
(1) Creating a Title Slide
(2) Creating Slides Using Layouts
(3) Create a presentation that consists of 5 slides and save your Presentation in desktop.
(4) Demonstrate slide transitions and animation
(5) Insert slide number, slide date, slide header and footer
(6) Demonstrate rehearse time.
(7) Demonstrate master slide.