UNIT 1 - Introduction
UNIT 1 - Introduction
INTRODUCTION
BASICS OF
COMPUTATIONAL
THINGKING (CT)
INTRODUCTION TO COMPUTATIONAL THINKING
Computational Thinking (CT) is about how to get a computer to do the
job for us – how can we control a complex electronic device to do a job
reliably without causing damage or harm.
Algorithms usually specify how a computer should do the given job.
Humans can carry out algorithms, but they can’t do it as fast as machine.
Modern computers can do trillion steps in time a human can do one step.
The magic is nothing more than a machine executing large numbers of
very simple computations very fast.
Programs are the bridge: algorithms encoded in special languages that
translate to machine instructions controlling a computer.
INTRODUCTION TO COMPUTATIONAL THINKING
But CT reaches further than the computer automation.
Information & computational processes provide a way of understanding
natural and social phenomena.
Much of CT today is oriented toward learning how the world works.
A no. of biologists, physicists, chemists, artists & other scientists are
looking at their subject matter through a computational lens.
Computer simulation enables previously impossible virtual experiments.
CT also advises us about jobs that computers cannot do in reasonable
amount of time or they are impossible for computers.
E.g. Many social, political, and economic problems.
INTRODUCTION TO COMPUTATIONAL THINKING
Computational thinking is nothing but the mental skills and practices for
• designing computations that get computers to do jobs for us and
• explaining & interpreting world as a complex of information processes.
Computers are agents that carry out the operations of a computation.
The computers follow programs for doing arithmetic & logic operations.
Computers can be humans or machines.
Humans can follow programs, but are nowhere near as fast or as error-
free as machines.
Machines can perform computational feats beyond human capabilities.
INTRODUCTION TO COMPUTATIONAL THINKING
We use the word “job” to refer to any task that someone considers
valuable
DATA LOGIC
HISTORY OF COMPUTATIONAL THINKING
APPLICATIONS OF COMPUTATIONAL THINKING
PROBLEM SOLVING
CONCEPTS
FORMAL PROBLEM DEFINITION
CHALLENGES IN PROBLEM SOLVING
PROBLEM SOLVING WITH COMPUTERS
FRAMEWORK FOR PROBLEM SOLVING
INTRODUCTION TO
PROBLEM SOLVING
TOOLS
FLOWCHART
ALGORITHM
PSEUDO CODE
DATA STRUCTURES