UNIT 1: INTRODUCTION TO COMPUTATIONAL THINKING
1.1 What is Computational Thinking?
1.2 Logical & Algorithmic thinking
1.3 Problem-solving and decomposition
1.4 Abstraction and Modeling
1.5 Anticipating and dealing with errors
1.6 Evaluating a solution
1.1 What is Computational Thinking?
Computational Thinking is not just about coding or using computers; it's a universal approach to
solving problems. CT teaches an approach to problem-solving where the ultimate aim is to
provide a solution whose form means it is ready to be programmed into a computer.
Why study Computational Thinking?
Computers are everywhere in the modern world. They help run almost every aspect of our lives
and our society. Computers are our tools. They should be used to solve our problems.
Computational thinking (CT) provides important lessons and principles from computer science
(CS), the subject area that teaches us how to use computers. These lessons and principles
include how pick out the essential details of a problem, how to formulate a problem in ways a
computer can understand, and how to follow a problem-solving process in ways that the
process can be automated.
Definitions
1. ‘Computational thinking is the thought processes involved in formulating a problem and
expressing its solution(s) in such a way that a computer—human or machine—can
effectively carry out.’
2. ‘The mental activity for abstracting problems and formulating solutions that can be
automated.’
3. ‘The process of recognizing aspects of computation in the world that surrounds us, and
applying tools and techniques from Computer Science to understand and reason about
both natural and artificial systems and processes.’
Computational Thinking vs Computer Science
Computational Thinking is a problem-solving approach that involves breaking down complex
problems into smaller, manageable parts using algorithms, abstraction, pattern recognition,
and decomposition. It is a universal skill applicable across various domains.
Computer Science: Computer Science is a discipline that studies computers, computational
systems, algorithms, data structures, programming languages, and other aspects related to
computing.
INTRODUCTION TO COMPUTATIONAL THINKING | Notes by: Dr. Poonam Ponde
, Core concepts of CT
Logical thinking
Algorithmic thinking
Decomposition
Generalization and pattern recognition
Modeling
Abstraction
Evaluation
1.2 Logical & Algorithmic thinking
Logic and algorithms are essential to CT. Logic is a system used for distinguishing between
correct and incorrect arguments. An argument is a chain of reasoning that ends up in a
conclusion.
Logic includes a set of principles that, when applied to arguments, allow us to demonstrate
what is true.
For example:
1. All humans have intelligence
2. I am human
3. Therefore, I have intelligence
This form of argument can be expressed symbolically as follows:
A is a B; All Bs are C; Therefore, A is C.
Humans carry out this type of reasoning all the time. However, we are not always correct,
which can lead us to form wrong conclusions. Since we use computers to automate our
reasoning, we must perform logic correctly before writing a computer solution.
In a logical argument, each individual thing you already know (or assume) is called a premise. A
premise is like any ordinary statement that can be either ‘true’ or ‘false’. In the example, our
premise is either true or false; i.e. it is either true or false that all humans have intelligence.
Inductive argument: The premises in an inductive argument are not necessarily true.
Boolean logic
Even though much of our reasoning is inductive, computers are not well equipped to deal with
inductive logic. Their binary nature makes them more apt to deal with black and white issues.
Boolean logic is a form of logic that deals with statements having one of only two values: true
or false (usually).
Propositions: Statements in Boolean logic are also known as propositions
1. A proposition can only have one value at any one time. In other words, a single proposition
can’t be both true and false simultaneously
INTRODUCTION TO COMPUTATIONAL THINKING | Notes by: Dr. Poonam Ponde
1.1 What is Computational Thinking?
1.2 Logical & Algorithmic thinking
1.3 Problem-solving and decomposition
1.4 Abstraction and Modeling
1.5 Anticipating and dealing with errors
1.6 Evaluating a solution
1.1 What is Computational Thinking?
Computational Thinking is not just about coding or using computers; it's a universal approach to
solving problems. CT teaches an approach to problem-solving where the ultimate aim is to
provide a solution whose form means it is ready to be programmed into a computer.
Why study Computational Thinking?
Computers are everywhere in the modern world. They help run almost every aspect of our lives
and our society. Computers are our tools. They should be used to solve our problems.
Computational thinking (CT) provides important lessons and principles from computer science
(CS), the subject area that teaches us how to use computers. These lessons and principles
include how pick out the essential details of a problem, how to formulate a problem in ways a
computer can understand, and how to follow a problem-solving process in ways that the
process can be automated.
Definitions
1. ‘Computational thinking is the thought processes involved in formulating a problem and
expressing its solution(s) in such a way that a computer—human or machine—can
effectively carry out.’
2. ‘The mental activity for abstracting problems and formulating solutions that can be
automated.’
3. ‘The process of recognizing aspects of computation in the world that surrounds us, and
applying tools and techniques from Computer Science to understand and reason about
both natural and artificial systems and processes.’
Computational Thinking vs Computer Science
Computational Thinking is a problem-solving approach that involves breaking down complex
problems into smaller, manageable parts using algorithms, abstraction, pattern recognition,
and decomposition. It is a universal skill applicable across various domains.
Computer Science: Computer Science is a discipline that studies computers, computational
systems, algorithms, data structures, programming languages, and other aspects related to
computing.
INTRODUCTION TO COMPUTATIONAL THINKING | Notes by: Dr. Poonam Ponde
, Core concepts of CT
Logical thinking
Algorithmic thinking
Decomposition
Generalization and pattern recognition
Modeling
Abstraction
Evaluation
1.2 Logical & Algorithmic thinking
Logic and algorithms are essential to CT. Logic is a system used for distinguishing between
correct and incorrect arguments. An argument is a chain of reasoning that ends up in a
conclusion.
Logic includes a set of principles that, when applied to arguments, allow us to demonstrate
what is true.
For example:
1. All humans have intelligence
2. I am human
3. Therefore, I have intelligence
This form of argument can be expressed symbolically as follows:
A is a B; All Bs are C; Therefore, A is C.
Humans carry out this type of reasoning all the time. However, we are not always correct,
which can lead us to form wrong conclusions. Since we use computers to automate our
reasoning, we must perform logic correctly before writing a computer solution.
In a logical argument, each individual thing you already know (or assume) is called a premise. A
premise is like any ordinary statement that can be either ‘true’ or ‘false’. In the example, our
premise is either true or false; i.e. it is either true or false that all humans have intelligence.
Inductive argument: The premises in an inductive argument are not necessarily true.
Boolean logic
Even though much of our reasoning is inductive, computers are not well equipped to deal with
inductive logic. Their binary nature makes them more apt to deal with black and white issues.
Boolean logic is a form of logic that deals with statements having one of only two values: true
or false (usually).
Propositions: Statements in Boolean logic are also known as propositions
1. A proposition can only have one value at any one time. In other words, a single proposition
can’t be both true and false simultaneously
INTRODUCTION TO COMPUTATIONAL THINKING | Notes by: Dr. Poonam Ponde