Syllabus
Unit I
Problem Solving and Algorithmic Thinking Overview – Algorithms – Properties, Constituents of Algorithms: Sequence, Selection and Repetition – Designing Algorithms, Expressing and Analyzing Algorithms – Algorithms vs Programs – Logical Reasoning – Logical Errors – Problem Definition – Problem Understanding and Analysis – Designing Solutions.
Unit II
Overview of Programming Paradigms – Introduction to Python – Variables – Strings, IO – Control Flow – Data Abstraction: Working with Lists/Arrays, Dictionaries, Tuples and Sets – Functions – Recursion – Files – Debugging – Computational Tracing of Python Programs.
Unit III
Problem Solving with Algorithms – Searching and Sorting – Applied Computational Thinking Problems: Python Libraries, Text Processing, Data Processing and Analysis, Chatbot etc.
Objectives and Outcomes
Course Objectives
The objective of this course is to introduce the computational aspects of problem solving to the students. The course exposes computational thinking to the students through systematic treatment on algorithms, logical reasoning and solutions. The course then introduces Python language which will be used as a computational tool for both designing algorithms and solving problems.
Course Outcomes
CO1: Apply algorithmic thinking to understand, define and solve problems.
CO2: Design and implement algorithm(s) for a given problem.
CO3: Apply the basic programming constructs for developing solutions and programs.
CO4: Analyze an algorithm by tracing its computational states, identifying bugs and correcting them.
CO-PO Mapping
PO/PSO |
PO1 |
PO2 |
PO3 |
PO4 |
PO5 |
PO6 |
PO7 |
PO8 |
PO9 |
PO10 |
PO11 |
PO12 |
PSO1 |
PSO2 |
CO |
CO1 |
2 |
2 |
2 |
|
|
|
|
|
|
|
|
|
2 |
2 |
CO2 |
3 |
2 |
3 |
|
3 |
|
|
|
|
|
|
|
2 |
2 |
CO3 |
2 |
2 |
2 |
|
2 |
|
|
|
|
|
|
|
2 |
2 |
CO4 |
2 |
1 |
1 |
|
2 |
|
|
|
|
|
|
|
2 |
2 |
Evaluation Pattern
Evaluation Pattern – 70:30
Assessment |
Internal |
External |
Mid Term Examination |
20 |
|
*Continuous Assessment – Theory |
10 |
|
*Continuous Assessment – Lab |
40 |
|
**End Semester |
|
30 (50 Marks – 2 hours) |
*Continuous Assessment – Can be Quizzes, Assignments, Case Studies, Projects, and Reports
**End Semester can be theory examination/ lab-based examination
Text Books / References
Textbook(s)
Sofia De Jesus and Dayrene Martinez, “Applied Computational Thinking with Python: Design algorithmic solutions for complex and challenging real-world problems”, Packt Publishing, November 2020.
Reference(s)
Thomas Mailund, “Introduction to Computational Thinking: Problem Solving, Algorithms, Data Structures, and More”, Apress, 2021.
Karl Beecher, “Computational Thinking: A beginner’s guide to problem-solving and programming”, BCS, The Chartered Institute for IT, 2017.
Curzon P, McOwan PW, “The Power of Computational Thinking: Games, Magic and Puzzles to help you become a computational thinker”, World Scientific Publishing Company; 2017.