Computational Thinking: An Introduction PDF

Summary

This presentation introduces computational thinking, a problem-solving approach. Key elements like decomposition, pattern recognition, and abstraction are explored. Examples and logical reasoning are also discussed. The presentation is suitable for introductory computer science courses.

Full Transcript

Computational Thinking An Introduction M. Shukla Where do we start?  First expressed by Seymour Papert in 1980 but made popular by Jeannette Wing in 2006. “Computational thinking is the thought processes involved...

Computational Thinking An Introduction M. Shukla Where do we start?  First expressed by Seymour Papert in 1980 but made popular by Jeannette Wing in 2006. “Computational thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent” Wing et. al, 2011  Essentially an approach to problem solving which might at first glance seem overwhelmingly complicated.  Exact definitions do vary with anywhere from 3, 4, 5 or 6 component parts described. M. Shukla M. Shukla Logical Reasoning  Deduction: Here an inference is made through widely accepted facts.  All men are mortal  Bjorn is a man ∴ Bjorn is mortal  Induction: This is where an inference through observation is made.  Bjorn is a man  Bjorn is mortal ∴ All men are mortal  Abduction: A probable conclusion is drawn from what is already known.  All men are mortal  Bjorn is mortal ∴ Bjorn is a man M. Shukla Logical Reasoning  Inductive vs Deductive vs Abductive.  Four friends get seats at the cinema.  Ann is in seat H3.  Ravi sits to the right of Ann in H4.  To the left of Ann is Siobhan.  To the left of Siobhan is Eve.  Which seat categorisation is Eve in? M. Shukla Abstraction  Abstraction requires us to only focus on the most important information and elements of a problem, and to ignore everything else.  Also known as generalisation or categorisation. M. Shukla Decomposition  Breaking down large complex problems/tasks/processes into smaller more manageable parts. M. Shukla Pattern Recognition  Identifying similarities both among problems, and any subsequent common problems that may arise.  This is the ability to recognise the parts of a problem that are known, or have been seen somewhere else. This frequently leads to easier ways of designing algorithms. M. Shukla Algorithm Design  Developing a step-by-step solution to the problem if possible, or defining a set of logical rules to follow to allow for the solution to occur. timeDepart = 15:00 timeArrive = 16:00 journeyTime = timeArrive - timeDepart M. Shukla Evaluation  Checking for appropriate function or outcome  Error correction - debugging M. Shukla Critique  Relatively new field  Arguably it is ill defined  Vague  Too narrow - social/ethical/legal/environmental implications  Cultural context uncertainty M. Shukla

Use Quizgecko on...
Browser
Browser