CST - Draft Syllabus of 3rd Semester - 06122022
CST - Draft Syllabus of 3rd Semester - 06122022
Syllabus
of
Revised 2022
West Bengal State Council of Technical & Vocational Education and
Skill Development (Technical Education Division)
Course Objectives
To enable student, develop structured solutions to problems and implementing them using computers. This
involves two parts:
• Formulating a solution for a given problem as a well-defined sequence of actions, and
• Expressing solution in a machine-readable form or a programming language.
For the second part, we will learn the common units of programming languages. The first part can only be
learned through the repeated practice of solving problems.
Course Content:
UNIT 1: Basics of C 5 A
• Decision making and branching statements, if statement (if, if-else, else-if ladder, nested if-
else), Switch case statement & applications.
• Conditional and unconditional ‘goto’ statement and drawbacks.
• Iterative/Loop statement, Entry controlled & exit controlled loop structure & differences,
Example like while, do- while, and for loop structure, Break and continue statement & their uses,
nested loop structure & applications.
West Bengal State Council of Technical & Vocational Education and
Skill Development (Technical Education Division)
• Advantages of subscripted variables/ arrays & accessing array elements, Declaration and
initialization of one dimensional, two dimensional, multidimensional (idea only) and character
arrays & Strings, Accessing array elements.
• Declaration and initialization of string variables, String handling functions from standard library
(strlen(), strcpy(), strcat(), strcmp()), Applications like string operations to extract substring
from left, right, middle of a string, Replacement of string characters, concatenation of two strings
etc.
UNIT 5: Pointers in C 6 C
• Understanding pointers, difference between memory variables and pointer variables, Declaring
and accessing pointers, constant pointers and pointer to a constant, Null Pointers, Generic
Pointers, Pointers arithmetic and expressions.
• Passing arguments to function using pointers, Pointers and arrays, Passing an array to a
function, Array name and Pointer.
• Pointers and Strings, Array of pointers, Function pointers, Pointer to a pointer.
• Dynamic memory allocation using malloc(), calloc(), realloc(). Uses of free(). Pointer to a
structure.
Course outcomes
• Student should be able to computationally formulate basic problems and write code to execute
them.
• The focus of the course as mentioned above should be on example-based learning.
Reference Books
Course Objectives:
• To learn how to work with a scripting language.
• To introduce Python programming language through its core language basics and program
design techniques suitable for modern applications.
• To understand the wide range of programming facilities available in Python covering
graphics, GUI, data visualization.
• To utilize high-performance programming constructs available in Python to strengthen
applications and development in practical scenarios.
Course Content:
➢ History, Features, setting up path, Installation and Working with Python, Basic Syntax
➢ Understanding Python variables
➢ Numeric data types: int, Long int, float, complex/imaginary
➢ String data type and string operations: String literals, manipulating strings, comparing
strings, Unicode string literals, converting between Simple Types, Converting to strings,
String Formatting, String Methods.
➢ Date and Time
➢ Other Data Types:
• Tuples
• List: Defining list, list slicing, Split, Join, Manipulating Lists, Copying Lists
• Dictionary
• Arrays
➢ Operator Precedence
➢ Understanding coding blocks
UNIT 5: Frameworks 6 C
Frameworks - The MVC framework, Django- What is Django and why should you use Django?
Django Form
Reference Books
Course outcomes: At the end of the course student will be able to build program with a scripting
language and will be able to learn any other scripting language on their own.
Design real life situational problems and think creatively about solutions of them. Apply a solution
clearly and accurately in a program using Python. Apply the best features of Python to program real
life problems.
Course Objectives
To enable student, develop structured solutions to problems and implementing them using computers. This
involves two parts:
• Formulating a solution for a given problem as a well-defined sequence of actions, and
• Expressing solution in a machine-readable form or a programming language.
To provide strong foundation for implementing programming language to formulate, analyze and
develop solutions related to various data structures problems.
Course Content:
✓ Basic Terminology
✓ Classification of Data Structures
✓ Operations on Data Structures.
✓ Stacks:
• Introduction to Stacks
• Array Representation of Stacks
• Operations on a Stack
• Applications of Stacks-Infix-to-Postfix Transformation
• evaluating Postfix Expressions.
✓ Queues:
• Introduction to Queues
• Array Representation of Queues
• Operations on a Queue
• Types of Queues-De-Queue
• Circular Queue
• Applications of Queues-Round Robin Algorithm.
✓ Recursion (GCD, Tower of Hanoi Problem)
• Operations on a Double Linked (add new node- first, in-between, end position.
Delete-- first, in-between, end position),
✓ Circular Linked Lists
• Operations on a circular Double Linked (add new node- first, in-between, end
position.
• Delete-- first, in-between, end position),
✓ Linked List Representation
• Operations of Stack,
• Operations of Queue.
✓ Trees:
• Basic Terminologies
• Definition and Concepts of Binary Trees
• Representations of a Binary Tree using Arrays and Linked Lists
• Operations on a Binary Tree-Insertion, Deletion
• Traversals, Types of Binary Trees
• B-Tree
• AVL Tree
✓ GRAPHS:
• Graph Terminologies
• Representation of Graphs- Set, Linked
• Matrix
• Graph Traversals
• BFS and DFS
Course outcomes
• Student should be able to computationally formulate basic problems and write code to
execute them and have a good understanding of Data Structures and its applications in
algorithms
• The focus of the course as mentioned above should be on example-based learning.
Reference Books
1. Introduction to Data Structures in C, Kamthane, Pearson
2. Data Structures Using C, Reema Thareja, Oxford University Press India.
3. Data Structures, Lipschutz Seymour, McGraw-Hill Education
4. A simplified approach to data structures, Pawan Goyal, Published by SPD
5. Data Structures Using C, 1e, Tenenbaum, Pearson
6. Data Structures and Algorithms, Aho, Pearson
West Bengal State Council of Technical & Vocational Education and
Skill Development (Technical Education Division)
Attendance-10 Marks
Viva/Presentation/Assignment /Quiz etc : - 10 Marks
Total Contact Hoirs:60 Hours
Course Learning Objectives: To have a thorough understanding of the basic structure and operation
of a digital computer, it’s Architecture, computational designs and how computer works.
Course Content:
UNIT 1: 6 A
Structure of Computers:
• Computer Functional units, Von-Neumann architecture, Bus structures, Basic Operational
Concepts, Data representation (Fixed and Floating point), Error detecting codes.
Register Transfer and Micro Operations:
• Register transfer, Memory transfers, Arithmetic micro-operations, Logic micro-
operations, Shift micro-operations, and Arithmetic logic shift unit.
UNIT 2: 20 A
UNIT 3: 10 B
West Bengal State Council of Technical & Vocational Education and
Skill Development (Technical Education Division)
UNIT 4: 9 B
UNIT 5: 15 C
Reference Books
Course Objectives: The objective of this course is to prepare the student with the algorithmic
foundations of computing. A sound grasp of algorithms is essential for any computer science engineer.
Almost all programming involves algorithms at some level.
Course Content:
UNIT 2: Sorting 16 A
• Shell sort
• Merge sort.
• Quicksort.
• Heapsort.
Computation of Best Average and worst-case Time complexity of all the above sorting algorithms.
Linear Time sorting
• Count Sort
• Bucket Sort
• Radix Sort
UNIT 3: Searching 18 B
Hashing, Hash Tables Hash functions, Collision and Collision resolving techniques.
Symbol Tables
UNIT 4: 20 C
Reference Books
Course Objectives:
West Bengal State Council of Technical & Vocational Education and
Skill Development (Technical Education Division)
This Lab course is intended to practice what is taught in theory class of ‘Computer Programming’ and become
proficient in computer programming. Computer programming is all about regular practice. Students should
work on solved and unsolved problems listed in the text books, and the problems given by the teacher. Some
of the topics that should necessary be covered in lab are listed below.
Course Content:
1! 2! n! mechanism &
using function. recursion.
c) To interchange the biggest and smallest number in to calculate
factorial a one-dimensional array using function.
d) To calculate addition, subtraction and multiplication of 2-
dimensional matrix using function.
e) Write a program in C to find GCD of two numbers using recursion.
f) To calculate factorial of any given number using recursion.
g) To demonstrate call by reference, call by value.
a) To read and display an integer array using pointer.
b) To read and display a text using a character pointer to a string.
Also count the number of characters, words and lines in the text.
c) To read, display, add and subtract of two times defined using
hour, minutes and values of seconds. Programs to
d) To read and display the contents of a structure variable using demonstrate
pointer to a structure. use of pointers
07 e) Write a program in C to create a singly linked list of n nodes and and dynamic
display it in reverse order. memory
f) Write a program in C to insert a new node to a Singly Linked List after allocation.
a desired node and display the list.
g) Write a program in C to delete a node from a Singly Linked List after/
before a desired node and display the list.
h) Implement Stack and Queue data structure using dynamic memory
allocation.
Course outcomes
Reference Books
Prerequisites NIL
Course Category PC
Course code : CST Semester : THIRD
Duration : 15 weeks Maximum Marks : 100
Teaching Scheme Examination Scheme
1.Continuous Internal Assessment :60 Marks
This 60 Marks will be comprised of the following Marks
division:
• Assignment: 20 Marks
• Class Performance: 20 Marks
• Viva Voce: 10 Marks
• Attendance: 10 Marks
2.End Semester Examination (External Assessment/
Sessional) :40 Marks
Practical: - 4 hrs/week
Course Objectives: This Lab course is intended to practice whatever is taught in theory class of
Scripting Languages’ and become proficient in scripting. Computer programming is all about
regular practice. Students should work on solved and unsolved problems listed in the text books, and
the problems given by the teacher. Some of the topics that should necessary be covered in lab are
listed below.
Course Content:
Contents (Practical)
Finding Whether PIP is installed, Install virtual environment using pip, Installing Django, Setting
PATH , Creating and Deploying Applications Using Django
Some of the suggested sample Exercises using Django
• Send data to a template
• Display data in a template
• Display object lists in a template
• Handle chains with filters in Django
• Create and Use URLs in Django
• Create base templates in order to extend other templates
• Insert static files in our templates
• Create an HTML form
• Handle the data sent by a form
• Create a Django form
• Validate and manipulate data sent from a Django form
• Create forms based on models
• Customize error messages and usage of widget
Course outcomes
Course outcomes: At the end of the course student will be able to build program with a scripting
language and will be able to learn any other scripting language on their own.
Reference Books
West Bengal State Council of Technical & Vocational Education and
Skill Development (Technical Education Division)
Course Content:
01 Skills to be developed
➢ Intellectual Skills:
➢ Use of programming language constructs in program
implementation.
➢ To be able to apply different logics to solve given problem.
➢ To be able to write program using different implementations for the
same problem Programs
➢ Study different types of errors as syntax semantic, fatal, linker & using
logical Formatted
➢ Debugging of programs input and
➢ Understanding different steps to develop program such as output.
➢ Problem definition
➢ Analysis
➢ Design of logic
➢ Coding
➢ Testing
West Bengal State Council of Technical & Vocational Education and
Skill Development (Technical Education Division)
List of Practical:
two nodes, end of the list); (b) delete a node from the list (1 st node, last node, in between two
nodes); (c) Concatenate two lists.
12. To create a circular linked list and insert & delete an element from the list.
13. Write a program to merge two shorted linked list.
14. Write a program to reverse a linked list.
r
15. To write a program to calculate the binomial co-efficient of n C of two numbers using
recursive function.
Also write the same program using function in non-recursive way.
16. To write a program to generate Fibonacci Series using recursive function. Also write the
same program using function in non-recursive way.
17. To write a program to create a binary tree and traverse it in pre-order and post-order form.
Documentation in the form of report should be submitted by the candidates for evaluation
purposes.
Course Outcomes
At the end of the course the students will be able to
CO I To test the theoretical learning in practical situations by accomplishing the task assigned
during the internship period.
CO II Able to apply various soft skills such as time management, positive attitude and
communication skills during performance of the tasks assigned in internship organization.