You are on page 1of 4

PROBLEM SOLVING AND ALGORITHMIC THINKING 2134

Course Outcome

CO Statement Level
Apply algorithmic thinking to understand, define, and solve
CO1 L2
problems

Understand and analyze an algorithm by tracing its


CO2 L2
computational states, identifying bugs and correcting them

CO3 Design and implement algorithm(s) for a given problem L3

Course Plan

Lecture Topics Keywords Objectives CO BTL


Hours
1 Introduction Computation Thinking, Provide working definition CO1 L2
Four corner stones, of computational thinking.

2 Logical Thinking Boolean logic, Expressions, Learn the role of logical CO1 L2
Relational Operators operators in logical
Applications of expressions.
propositional logic Learn to evaluate logical
Search engine, Query, expressions.
Logic gates, Digital circuit,
Database, Query language

3 Logical Reasoning Premises, conclusion, Learn to use deductive CO1 L2


Deductive reasoning, reasoning to evolve general
Inductive reasoning programming patterns.
Learn to use inductive
reasoning.
4 Problem Problem definition, Learn to define a problem as CO1 L2
Definition Software Perspective, functional requirements to
Requirements, State- the assist further in design
activity table and implementation.
Quiz 1 (7th - 11th Dec 2020)
5 Problem Pattern recognition, Top Learn to represent top- down CO1 L2
decomposition down approach design and bottom-up
design.
6 Abstraction Model Learn to abstract data and CO1 L2
create models.
7 Algorithm, Name Pseudo code and flowchart Learn to write pseudo code CO1 L2
Binding Symbols in flowchart Learn to draw the flowchart
Control structures in for different problems
flowchart
Programming Assignment 1 (14th - 18th Dec 2020)
8-9 Selection Selection control structure Learning to use single way, CO1, L3
IF, IF-ELSE, Nested IF- double way and multi way CO2
ELSE, Variables, Name selections
Binding
10-11 Repetition Repetition control structure Learning to use loops CO1, L3
Pre-test and post-test loops Understand how binding CO2
Counter controlled and varies with computational
states.
sentinel controlled loops
Quiz 2 (21st - 25th Dec 2020)
12 Sample Algorithms Sample algorithms covering CO3 L3
Selection, repetition,
selection inside selection,
selection inside repetition
13-14 Modularization Algorithm modules, Sub- Understand how CO2, L3
process, Module flexibility algorithms are modularized. CO3
and parameters, Well Learn how smaller units can
be made flexible through
designed modules
the use of formal
parameters.
Learn the characteristics of
well- defined modules.
Tutorial 1 (4th - 8th Jan 2021)
15-16 Data Lists, Storage, Arrays, Learn to represent and CO2 L3
organization: Indexing, Anchor, manipulate collection of
List and Arrays Operations on arrays data in lists and arrays.

17 Algorithms and Factorial, Digit reversal, Learn to observe the patterns CO3 L3
Exercises Cash demonization, for a given problem and
Smallest divisor, Duplicate write the algorithm.
numbers, Middle number
and position, kth smallest Understand that a problem
number, Fibonacci can have different
sequence algorithms varying in
performance.

Quiz 3 (11th - 15th Jan 2021)


18 Factoring and Factoring, Recursion, Base Learn to express tasks CO2, L3
Recursion case, Recursive step, recursively. CO3
Techniques Stopping condition Understand basic forms of
recursion.
19-20 Searching Search key, Linear search, Understand how searching CO2, L3
Binary search is performed using the CO3
intuitive linear search
technique.
Understand how halving
the population enables
efficient searching.
Observe the use of data
decomposition in the two
search techniques.
Programming Assignment 2 (18th - 22nd Jan 2021)
21-22 Sorting Swap, sorting algorithms, Learn bubble, selection and CO2, L3
Bubble Sort, Selection insertion sorting techniques. CO3
sort, Insertion Sort
Quiz 4 (25th - 29th Jan 2021)
23-24 Introduction to C Structure of a C program, Learning the syntax CO1 L3
programming Comments, Data types,
Modifiers, Keywords,
Literals, # define,
Declaration of variables.
25-27 Data input and scanf() and printf(), Manipulation of data CO1 L3
output formatted and unformatted, and variables
statements, Format specifiers.
Operators: Arithmetic,
relational, logical,
assignment and Bitwise
operators. Statements:
Expressions, precedence
and associativity.
Tutorial 2 (8th - 12th Feb 2021)
28-29 Control Structures: if, if-else, ternary Controlling flow of execution CO1, L3
Selection: operators, nested if. of the program CO2
Repetition: if else ladder, switch-case Using Repetitive statements
in C
while, do- while
for-loop: single variable,
multivariable controlled.
finite, infinite loops,
Nested loops, continue,
goto, break.
Quiz 5 (15th - 19th Feb 2021)

30 Arrays Introduction to 1D arrays Basics of arrays in C. CO3 L3


Programming Assignment 3 (22nd - 26th Feb 2021)
Project Review (22nd - 26th Feb 2021)

End Semester Online Exam + Online Viva (After 26th Feb 2021)

You might also like