Computational Thinking: A Beginner’s Guide to Problem-Solving and Programming

Computational Thinking: A Beginner’s Guide to Problem-Solving and Programming (PDF)

Karl beecher, explore pdf.

Convert PDF

  • Convert to EPUB
  • Convert to MOBI
  • Convert to AZW3
  • Convert to FB2

Read PDF online

Leave a comment.

Your email address will not be published. Required fields are marked *

Summary Computational Thinking: A Beginner’s Guide to Problem-Solving and Programming

A ‘must-read’ for students embarking on their first major projects, and any teacher stepping up to the challenge of teaching Computing at school. This is not just a book about programming, more a template for teaching. Karl Beecher speaks in plain English. Incisive insight and practical advice, standing independent of the Python exemplars used, predicated as it is on a holistic understanding of the subject terrain. Roger Davies, Director of IT, Queen Elizabeth School, and Editor, Computing At School, Tenderfoot Training Project I really enjoyed this book - it bridges the gap between the very practical, but perhaps narrow, field of computer programming with the real world problems that computer sci- entists might need to solve. The issue with encouraging young people to learn ‘coding’ is that they often struggle to understand how and when to use specific concepts and ideas. The underlying principles and real world applications are essential, and much harder to put across, than remembering the syntax for an IF statement. The discussions are presented in a readable format that would be suitable for bright GCSE students and should be essential reading for all A Level computer scientists. With the shift in focus at GCSE and A Level alike, from ‘programming’ to ‘computational thinking’, explanations and examples of abstraction, decomposition and generalisation, along with modelling, logic and efficiency are both engaging and useful. Mark Clarkson , Subject Leader and CAS Master Teacher Computational Thinking is a sprint through the theoretical underpinnings of computa- tion through to their application and the creation of software. The thirteen chapters start with an explanation of what is computational thinking, move through logical and algorithmic thinking, abstraction and modelling, to then focus on how to apply these concepts. The middle set of chapters cover how to create software with a focus on object-oriented solutions with a relatively short discussion on testing. Python is used as the programming language to demonstrate the use of the various techniques introduced in the early chapters but it would be straight forward to convert the examples to other similar languages such as Java, C#, etc. The final chapter provides a guided example based on the creation of a computer-controlled home automation system. Each chapter has a set of exercises to work through and model answers for these are supplied in an appendix. This is a very good overview of a very large field. While all of the topics are deserving of their own book the strength of this book is the explanation and demonstration of their close relationships. This book is an excellent complement to the many books on the Raspberry Pi and Python programming because it starts to explain some of the theoreti- cal underpinnings. The seasoned software developer should not be discouraged by the beginner’s guide sub-title as this is also a good refresher on some of the basics. Colin Smythe, Dunelm Services Limited, Principal Consultant A scholarly book albeit written from a pragmatic perspective distilling the knowledge and expertise of an experienced software developer into a form that is accessible for beginners. It’s engaging exercises and comprehensive references make it an invaluable learning resource. I would recommend it to anyone who wishes to gain an understand- ing of computational thinking and best practice in modern software development. Professor Cornelia Boldyreff, University of Greenwich

This book will prove an excellent companion to more general texts on Computing, espe- cially for teachers who are new to the subject. And with exercises at the end of each chapter, there is much to challenge students also. Highly recommended. Terry Freedman, independent education technology writer and consultant, and publisher of the ICT and Computing in Education website at www.ictineducation.org

COMPUTATIONAL THINKING

BCS, THE CHARTERED INSTITUTE FOR IT BCS, The Chartered Institute for IT, champions the global IT profession and the interests of individuals engaged in that profession for the benefit of all. We promote wider social and economic progress through the advancement of information technology science and practice. We bring together industry, academics, practitioners and government to share knowledge, promote new thinking, inform the design of new curricula, shape public policy and inform the public. Our vision is to be a world-class organisation for IT. Our 75,000-strong membership includes practitioners, businesses, academics and students in the UK and internationally. We deliver a range of professional development tools for practitioners and employees. A leading IT qualification body, we offer a range of widely recognised qualifications. Further Information BCS, The Chartered Institute for IT, First Floor, Block D, North Star House, North Star Avenue, Swindon, SN2 1FA, UK. T +44 (0) 1793 417 424 F +44 (0) 1793 417 444 www.bcs.org/contact http://shop.bcs.org/

COMPUTATIONAL THINKING A beginner’s guide to problem- solving and programming Karl Beecher

© BCS Learning & Development Ltd 2017 The right of the author to be identified as author of this work has been asserted by him in accordance with sections 77 and 78 of the Copyright, Designs and Patents Act 1988. All rights reserved. Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted by the Copyright Designs and Patents Act 1988, no part of this publication may be reproduced, stored or transmitted in any form or by any means, except with the prior permission in writing of the publisher, or in the case of reprographic reproduction, in accordance with the terms of the licences issued by the Copyright Licensing Agency. Enquiries for permission to reproduce material outside those terms should be directed to the publisher. All trademarks, registered names etc. acknowledged in this publication are the property of their respective owners. BCS and the BCS logo are the registered trademarks of the British Computer Society, charity number 292786 (BCS). Published by BCS Learning & Development Ltd, a wholly owned subsidiary of BCS, The Chartered Institute for IT, First Floor, Block D, North Star House, North Star Avenue, Swindon, SN2 1FA, UK. www.bcs.org Paperback ISBN: 978-1-78017-36-41 PDF ISBN-13: 978-1-78017-36-58 EPUB ISBN-13: 978-1-78017-36-65 Kindle ISBN-13: 978-1-78017-36-72 British Cataloguing in Publication Data. A CIP catalogue record for this book is available at the British Library. Disclaimer: The views expressed in this book are those of the author and do not necessarily reflect the views of the Institute or BCS Learning & Development Ltd except where explicitly stated as such. Although every care has been taken by the author and BCS Learning & Development Ltd in the preparation of the publication, no warranty is given by the author or BCS Learning & Development Ltd as publisher as to the accuracy or com- pleteness of the information contained within it and neither the author nor BCS Learning & Development Ltd shall be responsible or liable for any loss or damage whatsoever arising by virtue of such information or any instructions or advice contained within this publication or by any of the aforementioned. Typeset by Lapiz Digital Services, Chennai, India. vi

CONTENTS List of figures and tables xi Author xiv Acknowledgements xv Glosary xvi INTRODUCTION: WHY STUDY COMPUTATIONAL THINKING? 1 PART I COMPUTATIONAL THINKING 5 1. WHAT IS COMPUTATIONAL THINKING? 7 Objectives 7 What is computational thinking? 7 How is computational thinking used? 9 Disclaimers 11 Summary 13 Exercises 13 2. LOGICAL AND ALGORITHMIC THINKING 14 Objectives 14 Approach 14 Logical thinking 15 Algorithmic thinking 25 ‘Gotchas’ 30 Summary 36 Exercises 37 3. PROBLEM-SOLVING AND DECOMPOSITION 39 Objectives 39 Where to start 39 Defining the problem 40 Devising a solution: Something to keep in mind 42 Decomposition 43 Other effective strategies 47 Patterns and generalisation 50 Summary 54 Exercises 55 4. ABSTRACTION AND MODELLING 57 Objectives 57 Abstraction 57 vii

CONTENTS Modeling 64 Summary 74 Exercises 74 5. ANTICIPATING AND DEALING WITH ERRORS 76 Objectives 76 Coming to terms with bugs 76 Designing out the bugs 77 Mitigating errors 80 Testing 82 Debugging 85 You can’t have everything: Deciding which errors to fix 88 Summary 90 Exercises 90 6. EVALUATING A SOLUTION 92 Objectives 92 Solution evaluation 92 Is it correct? 93 Is it efficient? 94 Is it elegant? 97 Is it usable? 99 Trade-offs 101 Summary 104 Exercises 105 PART II COMPUTATIONAL THINKING IN SOFTWARE DEVELOPMENT 107 7. TUTORIAL FOR PYTHON BEGINNERS 109 Objectives 109 Introducing Python 109 First steps 109 Basic types 110 Basic operations 111 Functions 112 Comments 113 Summary 113 Exercises 113 8. EFFECTIVE BUILDING BLOCKS 115 Objectives 115 Logic 115 Basic algorithmic constructs 116 Program state 124 More advanced constructs 131 Summary 137 Exercises 138 9. ORGANISING YOUR CODE 139 Objectives 139 Recap 139 viii

CONTENTS Introducing tkinter 140 Separating concerns 141 Defining information scope 145 Using modules 150 Packages 157 Summary 159 Exercises 160 10. USING ABSTRACTIONS AND PATTERNS 162 Objectives 162 Finding patterns in programs 162 Abstractions in programming 164 Built-in types 165 Creating your own types 166 Ready-made patterns 175 Summary 182 Exercises 182 11. EFFECTIVE MODELLING 184 Objectives 184 Recap 184 Entities 186 Relationships 189 Processes 194 Usage 196 General advice 199 Summary 201 Exercises 201 12. TESTING AND EVALUATING PROGRAMS 203 Objectives 203 Introduction to program testing and evaluation 203 Anticipating bugs 203 Verification and validation 209 Testing the parts 210 Testing the whole 214 Debugging 219 Summary 225 Exercises 225 13. A GUIDED EXAMPLE 227 Problem definition 227 Problem decomposition 228 Finding patterns 229 Form generalisations and abstractions 232 Models 233 Annotated source code 237 Testing 243 Opportunities for improvement 246 ix

Advertisement

Related books

Matlab: A Practical Introduction to Programming and Problem Solving

2017 • 598 Pages • 21.51 MB

Dynamic Programming for Coding Interviews: A Bottom-Up Approach to Problem Solving

2017 • 136 Pages • 41.97 MB

A Beginner's Guide to Programming in R

2015 • 123 Pages • 3.99 MB

PureBasic - A Beginner's Guide To Computer Programming

2009 • 352 Pages • 3.43 MB

Anarchism: A Beginner's Guide (Oneworld Beginners' Guides)

2005 • 189 Pages • 1.15 MB

Head First Learn to Code: A Learner’s Guide to Coding and Computational Thinking

2018 • 991 Pages • 134.61 MB

Head First Learn to Code: A Learner’s Guide to Coding and Computational Thinking

2018 • 641 Pages • 81.44 MB

Evolution: A Beginner's Guide (Beginners Guide)

2005 • 216 Pages • 1.48 MB

AppleScript: A Beginner's Guide (Beginners Guide)

2009 • 449 Pages • 4.93 MB

The Leader's Guide to Lateral Thinking Skills: Powerful Problem-Solving Techniques to Ignite Your Team's Potential (Leaders Guide)

2003 • 196 Pages • 1.5 MB

The Minto Pyramid Principle: Logic in Writing, Thinking, & Problem Solving

2003 • 275 Pages • 25.99 MB

The Art of Systems Thinking - Essential Skills for Creativity and Problem Solving

2016 • 286 Pages • 15.86 MB

Systems thinking for social change : a practical guide to solving complex problems : avoiding unintended consequences, and achieving lasting results

2015 • 282 Pages • 5.88 MB

The Baha'i Faith: A Beginner's Guide (Oneworld Beginner’s Guides)

2008 • 199 Pages • 523 KB

Cloning: A Beginner's Guide (Beginners Guide (Oneworld))

2007 • 206 Pages • 2.32 MB

Paul: A Beginner's Guide (Beginners Guide (Oneworld))

2008 • 221 Pages • 820 KB

Algorithmic thinking : a problem-based introduction PDF

problem solving and algorithmic thinking pdf

Download Algorithmic thinking : a problem-based introduction PDF

Description

Table of contents.

Brief Contents Contents in Detail Foreword Acknowledgments Introduction Online Resources Who This Book Is For The Programming Language Why Use C? Static Keyword Include Files Freeing Memory Topics Judges Anatomy of a Problem Description Problem: Food Lines The Problem Solving the Problem Notes Chapter 1: Hash Tables Problem 1: Unique Snowflakes The Problem Simplifying the Problem Solving the Core Problem Solution 1: Pairwise Comparisons Solution 2: Doing Less Work Hash Tables Hash Table Design Why Use Hash Tables? Problem 2: Compound Words The Problem Identifying Compound Words Solution Problem 3: Spelling Check: Deleting a Letter The Problem Thinking About Hash Tables An Ad Hoc Solution Summary Notes Chapter 2: Trees and Recursion Problem 1: Halloween Haul The Problem Binary Trees Solving the Sample Instance Representing Binary Trees Collecting All the Candy A Completely Different Solution Walking the Minimum Number of Streets Reading the Input Why Use Recursion? Problem 2: Descendant Distance The Problem Reading the Input Number of Descendants from One Node Number of Descendants from All Nodes Sorting Nodes Outputting the Information The main Function Summary Notes Chapter 3: Memoization and Dynamic Programming Problem 1: Burger Fervor The Problem Forming a Plan Characterizing Optimal Solutions Solution 1: Recursion Solution 2: Memoization Solution 3: Dynamic Programming Memoization and Dynamic Programming Step 1: Structure of Optimal Solution Step 2: Recursive Solution Step 3: Memoization Step 4: Dynamic Programming Problem 2: Moneygrubbers The Problem Characterizing Optimal Solutions Solution 1: Recursion The main Function Solution 2: Memoization Problem 3: Hockey Rivalry The Problem About Rivalries Characterizing Optimal Solutions Solution 1: Recursion Solution 2: Memoization Solution 3: Dynamic Programming A Space Optimization Problem 4: Ways to Pass The Problem Solution: Memoization Summary Notes Chapter 4: Graphs and Breadth-First Search Problem 1: Knight Chase The Problem Moving Optimally Best Knight Outcome The Knight Flip-Flop A Time Optimization Graphs and BFS What Are Graphs? Graphs vs. Trees BFS on Graphs Problem 2: Rope Climb The Problem Solution 1: Finding the Moves Solution 2: A Remodel Problem 3: Book Translation The Problem Building the Graph The BFS Total Cost Summary Notes Chapter 5: Shortest Paths in Weighted Graphs Problem 1: Mice Maze The Problem Moving On from BFS Shortest Paths in Weighted Graphs Building the Graph Implementing Dijkstra's Algorithm Two Optimizations Dijkstra's Algorithm Runtime of Dijkstra's Algorithm Negative-Weight Edges Problem 2: Grandma Planner The Problem Adjacency Matrix Building the Graph Weird Paths Task 1: Shortest Paths Task 2: Number of Shortest Paths Summary Notes Chapter 6: Binary Search Problem 1: Feeding Ants The Problem A New Flavor of Tree Problem Reading the Input Testing Feasibility Searching for a Solution Binary Search Runtime of Binary Search Determining Feasibility Searching a Sorted Array Problem 2: River Jump The Problem A Greedy Idea Testing Feasibility Searching for a Solution Reading the Input Problem 3: Living Quality The Problem Sorting Every Rectangle Binary Search Testing Feasibility Testing Feasibility More Quickly Problem 4: Cave Doors The Problem Solving a Subtask Using a Linear Search Using Binary Search Summary Notes Chapter 7: Heaps and Segment Trees Problem 1: Supermarket Promotion The Problem Solution 1: Maximum and Minimum in an Array Max-Heaps Min-Heaps Solution 2: Heaps Heaps Two More Applications Choosing a Data Structure Problem 2: Building Treaps The Problem Recursively Outputting Treaps Sorting by Label Solution 1: Recursion Range Maximum Queries Segment Trees Solution 2: Segment Trees Segment Trees Problem 3: Two Sum The Problem Filling the Segment Tree Querying the Segment Tree Updating the Segment Tree The main Function Summary Notes Chapter 8: Union-Find Problem 1: Social Network The Problem Modeling as a Graph Solution 1: BFS Union-Find Solution 2: Union-Find Optimization 1: Union by Size Optimization 2: Path Compression Union-Find Relationships: Three Requirements Choosing Union-Find Optimizations Problem 2: Friends and Enemies The Problem Augmentation: Enemies The main Function Find and Union SetFriends and SetEnemies AreFriends and AreEnemies Problem 3: Drawer Chore The Problem Equivalent Drawers The main Function Find and Union Summary Notes Afterword Appendix A: Algorithm Runtime The Case for Timing . . . and Something Else Big O Notation Linear Time Constant Time Another Example Quadratic Time Big O in This Book Appendix B: Because I Can't Resist Unique Snowflakes: Implicit Linked Lists Burger Fervor: Reconstructing a Solution Knight Chase: Encoding Moves Dijkstra's Algorithm: Using a Heap Mice Maze: Tracing with Heaps Mice Maze: Implementation with Heaps Compressing Path Compression Step 1: No More Ternary If Step 2: Cleaner Assignment Operator Step 3: Understand the Recursion Appendix C: Problem Credits Index

Similar Free PDFs

problem solving and algorithmic thinking pdf

Algorithmic Thinking: A Problem-Based Introduction

problem solving and algorithmic thinking pdf

Algorithmic thinking : a problem-based introduction

problem solving and algorithmic thinking pdf

Data Structures And Algorithmic Thinking With Go

problem solving and algorithmic thinking pdf

Critical Thinking: A Student’s Introduction

problem solving and algorithmic thinking pdf

Data Structures and Algorithmic Thinking with Go: Data Structure and Algorithmic Puzzles

problem solving and algorithmic thinking pdf

Thinking and Reasoning: A Very Short Introduction

problem solving and algorithmic thinking pdf

Introduction to Mathematical Thinking

problem solving and algorithmic thinking pdf

Introduction to mathematical thinking

problem solving and algorithmic thinking pdf

Critical Thinking: An Introduction

problem solving and algorithmic thinking pdf

Computational and Algorithmic Thinking Book 2 - 2011-2015

problem solving and algorithmic thinking pdf

Thinking Like a Lawyer: A New Introduction to Legal Reasoning

problem solving and algorithmic thinking pdf

Algorithmic Regulation: a critical regulation

problem solving and algorithmic thinking pdf

PHP and Algorithmic Thinking for the Complete Beginner (2nd Edition): Learn to Think Like a Programmer

problem solving and algorithmic thinking pdf

Internet Archive Audio

problem solving and algorithmic thinking pdf

  • This Just In
  • Grateful Dead
  • Old Time Radio
  • 78 RPMs and Cylinder Recordings
  • Audio Books & Poetry
  • Computers, Technology and Science
  • Music, Arts & Culture
  • News & Public Affairs
  • Spirituality & Religion
  • Radio News Archive

problem solving and algorithmic thinking pdf

  • Flickr Commons
  • Occupy Wall Street Flickr
  • NASA Images
  • Solar System Collection
  • Ames Research Center

problem solving and algorithmic thinking pdf

  • All Software
  • Old School Emulation
  • MS-DOS Games
  • Historical Software
  • Classic PC Games
  • Software Library
  • Kodi Archive and Support File
  • Vintage Software
  • CD-ROM Software
  • CD-ROM Software Library
  • Software Sites
  • Tucows Software Library
  • Shareware CD-ROMs
  • Software Capsules Compilation
  • CD-ROM Images
  • ZX Spectrum
  • DOOM Level CD

problem solving and algorithmic thinking pdf

  • Smithsonian Libraries
  • FEDLINK (US)
  • Lincoln Collection
  • American Libraries
  • Canadian Libraries
  • Universal Library
  • Project Gutenberg
  • Children's Library
  • Biodiversity Heritage Library
  • Books by Language
  • Additional Collections

problem solving and algorithmic thinking pdf

  • Prelinger Archives
  • Democracy Now!
  • Occupy Wall Street
  • TV NSA Clip Library
  • Animation & Cartoons
  • Arts & Music
  • Computers & Technology
  • Cultural & Academic Films
  • Ephemeral Films
  • Sports Videos
  • Videogame Videos
  • Youth Media

Search the history of over 866 billion web pages on the Internet.

Mobile Apps

  • Wayback Machine (iOS)
  • Wayback Machine (Android)

Browser Extensions

Archive-it subscription.

  • Explore the Collections
  • Build Collections

Save Page Now

Capture a web page as it appears now for use as a trusted citation in the future.

Please enter a valid web address

  • Donate Donate icon An illustration of a heart shape

Algorithmic problem solving

Bookreader item preview, share or embed this item, flag this item for.

  • Graphic Violence
  • Explicit Sexual Content
  • Hate Speech
  • Misinformation/Disinformation
  • Marketing/Phishing/Advertising
  • Misleading/Inaccurate/Missing Metadata

Obscured text on back cover due to sticker attached.

[WorldCat (this item)]

plus-circle Add Review comment Reviews

11 Favorites

Better World Books

DOWNLOAD OPTIONS

No suitable files to display here.

IN COLLECTIONS

Uploaded by station03.cebu on October 11, 2021

SIMILAR ITEMS (based on metadata)

Teach Your Kids Code Header Image

What is Algorithmic Thinking? A Beginner’s Guide

This post may contain affiliate links. As an Amazon Associate, I earn from qualifying purchases.

Sharing is caring!

Algorithmic thinking is a way of approaching problems that involves breaking them down into smaller, more manageable parts. It is a process that involves identifying the steps needed to solve a problem and then implementing those steps in a logical and efficient manner. Algorithmic thinking is a key component of computational thinking, which is the ability to think like a computer and approach problems in a way that is both systematic and creative.

At its core, algorithmic thinking is about problem-solving. It is a way of thinking that involves breaking down complex problems into smaller, more manageable parts and then solving those parts one at a time. This approach can be applied to a wide range of problems, from simple math equations to complex programming challenges. By breaking problems down into smaller parts, algorithmic thinking allows us to approach problems in a way that is both logical and efficient.

Algorithmic thinking is closely related to critical thinking and logic. It involves the ability to analyze problems, identify patterns, and develop solutions that are both effective and efficient. By developing these skills, individuals can become better problem solvers and more effective communicators. Whether you are a student, a professional, or simply someone who wants to improve your problem-solving skills, algorithmic thinking is a valuable tool that can help you achieve your goals.

What is Algorithmic Thinking?

Algorithmic thinking is a problem-solving approach that involves breaking down complex problems into smaller, more manageable steps. It is a process of logically analyzing and organizing procedures to create a set of instructions that can be executed by a computer or human.

Algorithmic thinking involves using logic and critical thinking skills to develop algorithms, which are sets of instructions that can be used to solve problems. These algorithms can be used by computers or humans to efficiently and effectively solve problems. Algorithmic thinking, like computational thinking, involves exploring, decomposing, pattern recognition, and testing to develop efficient solutions to complex problems.

Algorithmic thinking is an essential skill in the fields of computer science , programming, and STEM . It is a valuable tool for analyzing and solving complex problems, making it an essential skill for success in today’s technology-driven world. Algorithmic thinking also helps to develop logic and critical thinking skills which are essential for success in any field.

Applications

Algorithmic thinking has numerous applications in various fields, including education, data analysis, machine learning, robotics, and operating systems. In education, it is used to develop data-driven instruction and instructional planning. In data analysis, it is used to develop algorithms for sorting and analyzing data. In machine learning, it is used to develop algorithms for recognizing patterns and making predictions. In robotics, it is used to develop algorithms for controlling robots. In operating systems, it is used to develop algorithms for managing resources and scheduling tasks.

Algorithmic Thinking Unplugged

Here at Teach Your Kids Code, we have designed a variety of algorithmic thinking activities for kids that don’t need a computer.

Check out a few of our activities here:

Coding Unplugged FI

Learn Algorithms With A Deck of Cards

‘Program’ your robot to navigate a maze of cards and obstacles. Students will learn the basics of designing an algorithm with this activity.

problem solving and algorithmic thinking pdf

Learn Algorithms with Snakes and Ladders

This twist on the classic board game Snakes and Ladders will teach your students all about Algorithms.

Algorithmic Thinking Process

Algorithmic thinking is a systematic approach to problem-solving that involves breaking down complex problems into smaller, more manageable parts. The algorithmic thinking process involves several steps that help in solving complex problems.

Exploring the Problem

The first step in the algorithmic thinking process is to explore the problem. This involves understanding the problem, identifying the constraints, and defining the goals. It is important to ask questions and gather information about the problem to gain a deeper understanding of it.

Decomposition

The next step is decomposition, which involves breaking down the problem into smaller, more manageable parts. This involves identifying the sub-problems and organizing them in a logical way. Decomposition helps in simplifying the problem and making it easier to solve.

Pattern Recognition

After decomposition, the next step is pattern recognition. This involves identifying patterns in the data and finding similarities between the sub-problems. Pattern recognition helps in identifying the relationships between the sub-problems and finding common solutions.

Abstraction

The next step is abstraction, which involves identifying the essential elements of the problem and ignoring the non-essential details. Abstraction helps in simplifying the problem and making it easier to understand.

Algorithm Design

The next step is algorithm design, which involves designing a solution to the problem. This involves creating a step-by-step plan for solving the problem. The plan should be clear, concise, and easy to follow.

Testing and Iteration

The final step is testing and iteration. This involves testing the solution and making any necessary changes. Iteration helps in refining the solution and making it more efficient.

Free Computational Thinking Worksheets

We’ve designed a set of worksheets to teach algorithmic and computational thinking concepts in the classroom. Worksheets will introduce the basic concepts of computational thinking. Answer guides are included.

Featured Image

Final Thoughts

Algorithmic thinking is a fundamental skill that is becoming increasingly important in today’s digital age. It is the process of breaking down complex problems into smaller, more manageable parts and developing a step-by-step approach to solving them.

Algorithmic thinking is not just limited to computer science and programming but can be applied to a wide range of fields, including mathematics, engineering, and business. By developing this skill, individuals can become more efficient problem-solvers, making them more valuable in the workforce.

In addition, algorithmic thinking can be a valuable tool for students of all ages. By introducing this concept early on in education, students can develop effective habits in processing tasks and problem-solving.

Overall, algorithmic thinking is a valuable skill that can benefit individuals in both their personal and professional lives. By breaking down complex problems into smaller, more manageable parts, individuals can become more efficient problem-solvers and better equipped to tackle the challenges of the digital age.

problem solving and algorithmic thinking pdf

Kate is mom of two rambunctious boys and a self-proclaimed super nerd. With a background in neuroscience, she is passionate about sharing her love of all things STEM with her kids. She loves to find creative ways to teach kids computer science and geek out about coding and math.  She has authored several books on coding for kids which can be found at Hachette UK .

Similar Posts

Spooky DIY Fun: 3D Pen Pumpkin Carving

Spooky DIY Fun: 3D Pen Pumpkin Carving

With Halloween just around the corner, it’s time to get your young learners excited about the season with a fun and unique DIY activity: 3D pen pumpkin carving. This creative endeavor combines art, technology, and…

DIY LEGO Table with HUGE Storage

DIY LEGO Table with HUGE Storage

A lot of readers have been asking me about our LEGO activity table! I’ve decided to hop on the blog today to share how we built our DIY LEGO table for kids. I absolutely love…

Best Rubik’s Cube

Best Rubik’s Cube

The Rubik’s Cube is an incredibly popular mechanical puzzle that has captured attention for decades and has managed to retain enough cultural capital to still be popular today. The 3D puzzle was invented all the…

Mel Science Kits: A Parent’s Honest Review

Mel Science Kits: A Parent’s Honest Review

As a parent who values the importance of science education, I am always on the lookout for ways to make learning engaging and fun for my children. That’s why I turned to Mel Science Kits…

50 Interesting STEM Facts

50 Interesting STEM Facts

Do you know what STEM is? STEM stands for Science, Technology, Engineering and Mathematics. STEM represents a unique set of interlinked subjects used in a variety of fields. STEM education is a common focus on…

Why STEM Is Important

Why STEM Is Important

Why STEM Is Important STEM, which stands for Science, Technology, Engineering, and Mathematics, comprises a group of critical fields that play an essential role in shaping the world we live in. Understanding the importance of…

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Last Updated on June 6, 2023 by Kaitlyn Siu

Algorithmic thinking, cooperativity, creativity, critical thinking, and problem solving: exploring the relationship between computational thinking skills and academic performance

  • Published: 11 August 2017
  • Volume 4 , pages 355–369, ( 2017 )

Cite this article

  • Tenzin Doleck 1 ,
  • Paul Bazelais 1 ,
  • David John Lemay 1 ,
  • Anoop Saxena 1 &
  • Ram B. Basnet 2  

6517 Accesses

80 Citations

2 Altmetric

Explore all metrics

The continued call for twenty-first century skills renders computational thinking a topical subject of study, as it is increasingly recognized as a fundamental competency for the contemporary world. Yet its relationship to academic performance is poorly understood. In this paper, we explore the association between computational thinking and academic performance. We test a structural model—employing a partial least squares approach—to assess the relationship between computational thinking skills and academic performance. Surprisingly, we find no association between computational thinking skills and academic performance (except for a link between cooperativity and academic performance). These results are discussed respecting curricular mandated instruction in higher-order thinking skills and the importance of curricular alignment between instructional objectives and evaluation approaches for successfully teaching and learning twenty-first-century skills.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price includes VAT (Russian Federation)

Instant access to the full article PDF.

Rent this article via DeepDyve

Institutional subscriptions

Similar content being viewed by others

problem solving and algorithmic thinking pdf

Computational Thinking Assessment – Towards More Vivid Interpretations

Josef Guggemos, Sabine Seufert & Marcos Román-González

problem solving and algorithmic thinking pdf

Assessing Computational Thinking: The Relation of Different Assessment Instruments and Learning Tools

problem solving and algorithmic thinking pdf

A valid and reliable tool for examining computational thinking skills

Mustafa Yağcı

Anderson, L. (2002). Curricular alignment: A re-examination. Theory into Practice, 41 (4), 255–264.

Article   Google Scholar  

Ater-Kranov, A., Bryant, R., Orr, G., Wallace, S., & Zhang, M. (2010). Developing a community definition and teaching modules for computational thinking: Accomplishments and challenges. In Proceedings of the 2010 ACM conference on information technology education (pp. 143–148). ACM.

Atmatzidou, S., & Demetriadis, S. (2016). Advancing students’ computational thinking skills through educational robotics: A study on age and gender relevant differences. Robotics And Autonomous Systems, 75, 661–670. doi: 10.1016/j.robot.2015.10.008 .

Barr, V., & Stephenson, C. (2011). Bringing computational thinking to K-12. ACM Inroads, 2 (1), 48. doi: 10.1145/1929887.1929905 .

Bateman, D., Taylor, S., Janik, E., & Logan, A. (2008). Curriculum coherence and student success. Champlain College CEGEP. Retrieved from: http://www.cdc.qc.ca/parea/786950_bateman_curriculums_champlain_st_lambert_PAREA_2007.pdf .

Bazelais, P., Lemay, D. J., & Doleck, T. (2016). How does grit impact college students’ academic achievement in science? European Journal of Science and Mathematics Education, 4 (1), 33–43.

Google Scholar  

Biggs, J. (1996). Enhancing teaching through constructive alignment. Higher Education, 32, 1–18.

Biggs, J. (1999). Teaching for quality learning at university . Society for Research into Higher Education/Open University Press.

Brennan, K., & Resnick, M. (2012). New frameworks for studying and assessing the development of computational thinking . Vancouver: Paper presented at the American Educational Research Association.

Bundy, A. (2007). Computational thinking is pervasive. Journal of Scientific and Practical Computing, 1 (2), 67–69.

Cooper, S., Pérez, L., & Rainey, D. (2010). K-12 computational learning. Communications of the ACM, 53 (11), 27. doi: 10.1145/1839676.1839686 .

Denning, P. (2009). The profession of IT beyond computational thinking. Communications of the ACM, 52 (6), 28. doi: 10.1145/1516046.1516054 .

Deschryver, M. D., & Yadav, A. (2015). Creative and computational thinking in the context of new literacies: Working with teachers to scaffold complex technology-mediated approaches to teaching and learning. Journal of Technology and Teacher Education, 23 (3), 411–431.

Farris, A. V., & Sengupta, P. (2014). Perspectival computational thinking for learning physics: A case study of collaborative agent-based modeling. In Proceedings of the 12th international conference of the learning sciences (ICLS 2014) (pp. 1102–1107).

Fornell, C., & Larcker, D. (1981). Evaluating structural equation models with unobservable variables and measurement error. Journal of Marketing Research, 18 (1), 39–50.

Foundation for Critical Thinking. (2015). Elements and standards learning tool. Retrieved from: http://www.criticalthinking.org/pages/analyzing-and-assessing-thinking-/783 .

Futschek, G. (2006). Algorithmic thinking: The key for understanding computer science. In International conference on informatics in secondary schools - evolution and perspectives (pp. 159–168). Berlin: Springer.

Google for Education. (n.d.). CT overview. Retrieved from https://edu.google.com/resources/programs/exploring-computational-thinking/#!ct-overview .

Gretter, S., & Yadav, A. (2016). Computational thinking and media & information literacy: An integrated approach to teaching twenty-first century skills. Techtrends, 60 (5), 510–516. doi: 10.1007/s11528-016-0098-4 .

Grover, S., & Pea, R. (2013). Computational thinking in K-12: A review of the state of the field. Educational Researcher, 42 (1), 38–43. doi: 10.3102/0013189x12463051 .

Guzdial, M. (2008). Education paving the way for computational thinking. Communications of the ACM, 51 (8), 25. doi: 10.1145/1378704.1378713 .

Hair, J., Ringle, C., & Sarstedt, M. (2011). PLS-SEM: Indeed a silver bullet. The Journal of Marketing Theory and Practice, 19 (2), 139–152. doi: 10.2753/mtp1069-6679190202 .

Hu, C. (2011). Computational thinking: What it might mean and what we might do about it. In Proceedings of the 16th annual joint conference on innovation and technology in computer science education (pp. 223–227). ACM.

Katai, Z. (2014). The challenge of promoting algorithmic thinking of both sciences- and humanities-oriented learners. Journal of Computer Assisted Learning, 31 (4), 287–299. doi: 10.1111/jcal.12070 .

Kiss, G., & Arki, Z. (2017). The influence of game-based programming education on the algorithmic thinking. Procedia - Social and Behavioral Sciences, 237 (21), 613–617.

Kock, N. (2015a). WarpPLS. Retrieved from http://www.warppls.com .

Kock, N. (2015b). WarpPLS 5.0 user manual . ScripWarp Systems. Retrieved from http://cits.tamiu.edu/WarpPLS/UserManual_v_5_0.pdf .

Korkmaz, Ö., Çakir, R., & Özden, M. (2017). A validity and reliability study of the computational thinking scales (CTS). Computers in Human Behavior . doi: 10.1016/j.chb.2017.01.005 .

Kules, B. (2016). Computational thinking is critical thinking: Connecting to university discourse, goals, and learning outcomes. In Proceedings of the association for information science and technology. Silver Springs, MD: American Society for Information Science.

Lee, I., Martin, F., & Apone, K. (2014). Integrating computational thinking across the K-8 curriculum. ACM Inroads, 5 (4), 64–71. doi: 10.1145/2684721.2684736 .

Liu, J., & Wang, L. (2010). Computational thinking in discrete mathematics. In IEEE 2nd international workshop on education technology and computer science (pp. 413–416).

Lockwood, J., & Mooney, A. (2017). Computational thinking in education: Where does it fit? A Systematic Literary Review . (under review).

Lu, J., & Fletcher, G. (2009). Thinking about computational thinking. ACM SIGCSE Bulletin, 41 (1), 260–264. doi: 10.1145/1539024.1508959 .

Lye, S., & Koh, J. (2014). Review on teaching and learning of computational thinking through programming: What is next for K-12? Computers in Human Behavior, 41, 51–61. doi: 10.1016/j.chb.2014.09.012 .

Mezirow, J. (2000). Learning as transformation: Critical perspectives on a theory in progress . San Francisco: Jossey-Bass.

Mishra, P., Yadav, A., & Deep-Play Research Group. (2013). Rethinking technology & creativity in the 21st century. TechTrends, 57 (3), 10–14.

Mueller, J., Beckett, D., Hennessey, E., & Shodiev, H. (2017). Assessing computational thinking across the curriculum. In Emerging research, practice, and policy on computational thinking (pp. 251–267). Springer International Publishing.

National Council for Curriculum and Assessment. (2013). Draft specification for junior cycle short course. Retrieved from http://www.juniorcycle.ie/NCCA_JuniorCycle/media/NCCA/Documents/Consultation/Short%20Courses/SC_P_and_C.pdf .

National Research Council. (2011). Report of a workshop of pedagogical aspects of computational thinking. Retrieved from http://www.nap.edu/catalog.php?record_id=13170 .

Papert, S. (1996). An exploration in the space of mathematics educations. International Journal of Computers for Mathematical Learning, 1 (1), 95–123. doi: 10.1007/bf00191473 .

Polya, G. (1981). Mathematical discovery: On understanding, learning and teaching problem solving . New York: Wiley.

Resnick, M., Silverman, B., Kafai, Y., Maloney, J., Monroy-Hernández, A., Rusk, N., et al. (2009). Scratch. Communications of the ACM, 52 (11), 60. doi: 10.1145/1592761.1592779 .

Román-González, M., Pérez-González, J., & Jiménez-Fernández, C. (2017). Which cognitive abilities underlie computational thinking? Criterion validity of the computational thinking test. Computers in Human Behavior, 72, 678–691. doi: 10.1016/j.chb.2016.08.047 .

Sawyer, K. (2012). Explaining creativity: The science of human innovation (2nd ed.). New York: Oxford Univ. Press.

Sengupta, P., Kinnebrew, J., Basu, S., Biswas, G., & Clark, D. (2013). Integrating computational thinking with K-12 science education using agent-based computation: A theoretical framework. Education And Information Technologies, 18 (2), 351–380. doi: 10.1007/s10639-012-9240-x .

Snalune, P. (2015). The benefits of computational thinking. ITNOW, 57 (4), 58–59. doi: 10.1093/itnow/bwv111 .

Standl, B. (2016). A case study on cooperative problem solving processes in small 9th grade student groups. IEEE global engineering education conference (EDUCON), Abu Dhabi (pp. 961–967).

Voogt, J., Fisser, P., Good, J., Mishra, P., & Yadav, A. (2015). Computational thinking in compulsory education: Towards an agenda for research and practice. Education and Information Technologies, 20 (4), 715–728. doi: 10.1007/s10639-015-9412-6 .

Voskoglou, M. G., & Buckley, S. (2012). Problem solving and computers in a learning environment. Egyptian Computer Science Journal, 36 (4), 28–46.

Warneken, F., Steinwender, J., Hamann, K., & Tomasello, M. (2014). Young children’s planning in a collaborative problem-solving task. Cognitive Development, 31, 48–58. doi: 10.1016/j.cogdev.2014.02.003 .

Weintrop, D., Beheshti, E., Horn, M., Orton, K., Jona, K., Trouille, L., et al. (2015). Defining computational thinking for mathematics and science classrooms. Journal of Science Education and Technology, 25 (1), 127–147. doi: 10.1007/s10956-015-9581-5 .

Wenger, E. (1998). Communities of practice: Learning, meaning, and identity . Cambridge: Cambridge University Press.

Book   Google Scholar  

Williams, R. L. (2005). Targeting critical thinking within teacher education: The potential impact on Society. The Teacher Educator, 40 (3), 163–187.

Wing, J. (2006). Computational thinking. Communications of the ACM, 49 (3), 33. doi: 10.1145/1118178.1118215 .

Wing, J. (2008). Computational thinking and thinking about computing. Philosophical Transactions Of The Royal Society A: Mathematical, Physical And Engineering Sciences, 366 (1881), 3717–3725. doi: 10.1098/rsta.2008.0118 .

Wing, J. (2011). Research notebook: Computational thinking—What and why? The Link Newsletter, 6 , 1–32. Retrieved from http://link.cs.cmu.edu/files/11-399_The_Link_Newsletter-3.pdf .

Wing, J. (2014). Computational thinking benefits society. Social issues in computing . Retrieved from http://socialissues.cs.toronto.edu/2014/01/computational-thinking/ .

Wold, H. (1982). Soft modeling: The basic design and some extensions. In K. Joreskog & H. Wold (Eds.), Systems under indirect observation (pp. 1–54). Amsterdam: North-Holland.

Yadav, A., Hong, H., & Stephenson, C. (2016). Computational thinking for all: Pedagogical approaches to embedding 21st century problem solving in K-12 classrooms. Techtrends, 60 (6), 565–568. doi: 10.1007/s11528-016-0087-7 .

Yadav, A., Stephenson, C., & Hong, H. (2017). Computational thinking for teacher education. Communications of the ACM, 60 (4), 55–62. doi: 10.1145/2994591 .

Download references

Author information

Authors and affiliations.

McGill University, 3700 McTavish St., Montreal, QC, H3A 1Y2, Canada

Tenzin Doleck, Paul Bazelais, David John Lemay & Anoop Saxena

Colorado Mesa University, Grand Junction, CO, USA

Ram B. Basnet

You can also search for this author in PubMed   Google Scholar

Corresponding author

Correspondence to Tenzin Doleck .

Rights and permissions

Reprints and permissions

About this article

Doleck, T., Bazelais, P., Lemay, D.J. et al. Algorithmic thinking, cooperativity, creativity, critical thinking, and problem solving: exploring the relationship between computational thinking skills and academic performance. J. Comput. Educ. 4 , 355–369 (2017). https://doi.org/10.1007/s40692-017-0090-9

Download citation

Received : 27 May 2017

Revised : 10 July 2017

Accepted : 07 August 2017

Published : 11 August 2017

Issue Date : December 2017

DOI : https://doi.org/10.1007/s40692-017-0090-9

Share this article

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

  • Computational thinking
  • Computational thinking skills
  • Academic performance
  • CEGEP students
  • Curricular alignment
  • Find a journal
  • Publish with us
  • Track your research
  • Link copied

Supporting next-generation educational programs that combine the metaverse experience with a problem-solving mindset

Supporting next-generation educational programs that combine the metaverse experience with a problem-solving mindset

Multidisciplinary professional services organization

Show resources

カーボンニュートラル社会の実現 エネルギービジネスの変革に向けたカウントダウン(pdf), creating social value - ey is fulfilling its corporate responsibilities through ey ripples, in which it leverages the professional knowledge of its people across various fields to carry out pro bono activities that benefit society., ey japan is playing its part by operating a next-generation educational program utilizing the latest technologies..

  • Controlling a self-made avatar within the metaverse provides children with an opportunity to think about how to communicate with others.
  • Using design thinking to find the best solutions to a problem.
  • Showing how a pro bono project for EY Ripples leverages how EY does business to create a positive impact in society.

Experiencing the metaverse and creating avatars using VR headsets and tablets

Experiencing the metaverse and creating avatars using VR headsets and tablets

The workshop enabled children to create and control their own avatars and to think about different ways to communicate with others.

This next-generation educational program is being carried out in conjunction with Education A³ of Fukuoka City (Representative Director: Yuichi Kusaba ) which is a Certified NPO Corporation. Education A³ is working to eliminate disparities within children’s education, particularly in the Fukuoka area, by operating alternative schools for children who are unable to attend mainstream education. The program aims to help these children nurture problem-solving abilities and ways of thinking that differ from what they would learn in mainstream classes.

It has four sessions and caters to students across a variety of age ranges, from the third grade of elementary school to high school. The first session was held at EY Digital Hub Fukuoka, facility established by EY to lead Japan’s digital transformation. Members of EY Strategy and Consulting’s Technology Consulting team provided a communication experience using the metaverse and virtual reality (VR).

The children were each provided with tablets to enter a virtual recreation of Fukuoka City’s Torikai Hachimangu shrine. They explored the shrine and its grounds using an avatar (a virtual character of themselves) which they created and took part in an information-gathering activity. They also used VR headsets to be more immersed in the virtual world, where they worked on clearing missions.

EY Japan also supported the building of the metaverse version of Torikai Hachimangu shrine that was used in the program. For c.1800 years, the shrine has been a center of faith and communication within the region so we gave thought to how to optimize the shrine in a way that would be relevant to the modern world.

EY Japan is also proposing and developing projects which unite cutting-edge technologies, including the metaverse, with our support for companies and organizations that are exploring new initiatives or are interested in merging real and digital environments. Building a metaverse version of Torikai Hachimangu shrine is just one example of our work.

The team from EY Japan used the same approach to create the metaverse experience for children as they do when giving a client demonstration in their everyday roles. Firstly, it was important that the children had a visceral experience of the metaverse by using a VR headset. Today, children are often referred to as digital natives and can quickly familiarize themselves with how to operate technology, with younger children tending to master it the fastest. One of the children at the session commented: “When I entered the metaverse, it was surprising at the start. But then it was fun, and I thought that modern technology is amazing.”

Yuichi Kusaba, Representative Director, Education A³

A particular highlight for the children was the time spent creating their own avatars. They were completely free to choose items such as their avatar’s face, hairstyle and clothing, making the avatar an aspirational model, rather than an accurate likeness of each child. Operating an avatar within the metaverse provided children who are unable to attend school with an opportunity to think about how to communicate with others.

Experiencing the opportunities for work and play in the metaverse helps to give children hope for the future. I also think that in an era of rapid change children can learn an important skill through early exposure to design thinking: they learn how to develop their own solution to a given problem. Yuichi Kusaba, Representative Director, Education A³

Working toward design thinking that gets to the heart of problem solving

Working toward design thinking that gets to the heart of problem solving

The design thinking workshop was a valuable learning opportunity, not only for the children but also for the EY team. We were able to adjust the workshop content based on the children’s level of engagement, and establish our fundamental approach to design thinking.

The second and subsequent sessions were held as online workshops about design thinking. Team members from EY wavespace™, an innovation support hub that facilitates collaboration between various stakeholders, provided opportunities to learn how to think in a way that gets to the heart of a problem and, in turn, to its solution.

Design thinking is a method of applying the thought patterns used by designers in business situations: finding the fundamental solution to an issue can be a source of innovation. Design includes elements of planning and conceptualization and design thinking is included in programs at major US universities as a method for innovative thinking.

The EY team acted as facilitators and led discussions on issues familiar to children. They helped organize the many ideas suggested by the children to solve the problem and encouraged them to continue their discussions. The children in each group then presented their proposed solution.

This was the children’s first experience of design thinking. The second and subsequent sessions focused on junior high school students, who exchanged opinions using an online conferencing system and an online whiteboard tool to post and develop ideas. Many of the children appeared to initially find this difficult so the team responded by adjusting the difficulty of the program. When the children gained a better understanding of the scenario, they were able to contribute and get more involved.

One of the participants commented, “This was the first time do this. I don’t usually get opportunities to think so deeply about a topic, so it was really fun.” Building a basic approach to design thinking with content easily understood by junior high school students also proved a learning experience for the EY Japan team.

As adults tend to view things through existing frameworks, it was striking how the children could come up with novel ideas that were free of bias.

Yosuke Amano , EY  wavespace™ Tokyo Leader

The children discussed creating new snacks suitable for field trips, generating far more innovative ideas than adults would.

A success that aligns with EY’s Purpose and how we do business

We want to combine new technologies like the metaverse with design thinking to enable children to find their own solutions to a problem.” This was the thinking behind the program and it was a project that also resonates with EY’s global shared purpose of Building a better working world. Innovation is generated through the intersection of many different approaches so, as well as being a pro bono project for the EY Ripples program, this was also an initiative that leveraged how EY does business to impact society. In this way, the program was a great success.

Yosuke Amano , EY  wavespace™ Tokyo Leader

Yosuke Amano , EY wavespace™ Tokyo Leader

EY wavespace™

EY wavespace™   brings together business, design and technology, enabling companies to accelerate transformation, drive innovation and create measurable outcomes. With human-centered design and collaboration at our core methodologies, we support our clients reimagine what’s possible and reframe their thinking to solve problems together.

EY is fulfilling its corporate responsibilities through EY Ripples, and EY Japan is playing its part by operating a next-generation educational program utilizing the latest technologies.

About this article

Connect with us

Our locations

EY Client Portal

Legal and privacy

EY refers to the global organization, and may refer to one or more, of the member firms of Ernst & Young Global Limited, each of which is a separate legal entity. Ernst & Young Global Limited, a UK company limited by guarantee, does not provide services to clients.

EY | Assurance | Consulting | Strategy and Transactions | Tax

EY is a global leader in assurance, consulting, strategy and transactions, and tax services. The insights and quality services we deliver help build trust and confidence in the capital markets and in economies the world over. We develop outstanding leaders who team to deliver on our promises to all of our stakeholders. In so doing, we play a critical role in building a better working world for our people, for our clients and for our communities.

EY refers to the global organization, and may refer to one or more, of the member firms of Ernst & Young Global Limited, each of which is a separate legal entity. Ernst & Young Global Limited, a UK company limited by guarantee, does not provide services to clients. For more information about our organization, please visit ey.com.

© 2020 EYGM Limited. All Rights Reserved.

EYG/OC/FEA no.

This material has been prepared for general informational purposes only and is not intended to be relied upon as accounting, tax, or other professional advice. Please refer to your advisors for specific advice.

EY logo

Welcome to EY.com

In addition to cookies that are strictly necessary to operate this website, we use the following types of cookies to improve your experience and our services: Functional cookies to enhance your experience (e.g. remember settings), and  Performance cookies to measure the website's performance and improve your experience . , and Marketing/Targeting cookies , which are set by third parties, allow us to execute marketing campaigns, manage our relationship with you, build a profile of your interests and provide you with content or service offerings in accordance with your preferences. 

We have detected that Do Not Track/Global Privacy Control is enabled in your browser; as a result, Marketing/Targeting cookies , which are set by third parties that allow us to execute marketing campaigns, manage our relationship with you, build a profile of your interests and provide you with content or service offerings in accordance with your preferences are automatically disabled.

You may withdraw your consent to cookies at any time once you have entered the website through a link in the privacy policy, which you can find at the bottom of each page on the website.

Review our  cookie policy  for more information.

Customize cookies

I decline optional cookies

IMAGES

  1. Algorithmic Thinking PDF

    problem solving and algorithmic thinking pdf

  2. What is Problem Solving Algorithm?, Steps, Representation

    problem solving and algorithmic thinking pdf

  3. How to Improve Algorithmic Thinking Skills in DSA?

    problem solving and algorithmic thinking pdf

  4. DAA 1 7 Fundamentals of Algorithmic problem solving

    problem solving and algorithmic thinking pdf

  5. problem solving and algorithmic thinking

    problem solving and algorithmic thinking pdf

  6. PPT

    problem solving and algorithmic thinking pdf

VIDEO

  1. Computational Thinking in Arabic: Chapter 2.3 Logical and Algorithmic Thinking

  2. Computational Thinking in Arabic: Chapter 2.1 Logical and Algorithmic Thinking

  3. How Does the Busy Beaver Five Challenge Enhance Programming Skills?

  4. Optimization in Algorithmic Problem Solving: DP, Memoization, and Tabulation

  5. How to effectively introduce algorithmic thinking in remote learning?

  6. PYBC01

COMMENTS

  1. Computational Thinking: A Beginner's Guide to... (PDF)

    LOGICAL AND ALGORITHMIC THINKING 14 Objectives 14 Approach 14 Logical thinking 15 Algorithmic thinking 25 'Gotchas' 30 Summary 36 Exercises 37 3. PROBLEM-SOLVING AND DECOMPOSITION 39 Objectives 39 Where to start 39 Defining the problem 40 Devising a solution: Something to keep in mind 42 Decomposition 43 Other effective strategies 47 ...

  2. PDF Principles of Algorithmic Problem Solving

    Algorithmic problem solving is the art of formulating efficient methods that solve problems of a mathematical nature. From the many numerical algo-rithms developed by the ancient Babylonians to the founding of graph theory by Euler, algorithmic problem solving has been a popular intellectual pursuit during the last few thousand years.

  3. PDF Anyone Can Code: Algorithmic Thinking

    Can Code series: Algorithmic Thinking. We all come up with and use algorithms every day to achieve objectives and solve problems. My approach in this book is primarily based on using common problem-solving approaches and applying them to algorithmic thinking to design programs. I also continue using modularization as a key element.

  4. PDF Algorithmic Thinking: The Key for Understanding Computer Science

    definition is sufficient: "An Algorithm is a method to solve a problem that consists of exactly defined instructions". Algorithmic thinking is a term that is used very often as one of the most important competences that can be achieved by education in Informatics [3]. Algorithmic thinking is somehow a pool of abilities that are

  5. PDF SECTION 4: ALGORITHMIC THINKING

    K. Webb ENGR 112 3 Algorithmic Thinking Algorithmic thinking: The ability to identify and analyze problems, and to develop and refine algorithms for the solution of those problems Algorithm: Detailed step-by-step procedure for the performance of a task Learning to program is about developing algorithmic thinking skills, not about learning a

  6. PDF Algorithmic Problem Solving with Python

    Algorithmic Problem Solving with Python John B. Schneider Shira Lynn Broschat Jess Dahmen February 22, 2019. ii. Contents 1 Introduction 1 ... into thinking the digitized quantity varies continuously as it does in the real world. Through the process of digitizing, we can store, manipulate, and render music or pictures on our computers ...

  7. PDF An Overview of Computational Thinking

    Creativity, algorithmic thinking, critical thinking, problem solving, cooperation ISTE (2015; Oden et al. 2015) Data analysis, abstract thinking, algorithmic thinking, ... (BCS, 2014, p.3). As such, this paper will use the definitions of abstraction, problem decomposition, algorithmic thinking, automation and generalization from amongst the ...

  8. PDF Algorithmic thinking, cooperativity, creativity, critical thinking, and

    the field progressed, a distinction evolved between the two terms. Algorithmic thinking stems from the concept of an algorithm, which refers to solving a problem by developing a set of steps taken in a sequence to achieve the desired outcome (Katai 2014). Algorithmic thinking is the thought process towards formulating the

  9. (PDF) Algorithmic Thinking: The Key for Understanding ...

    In practical terms, algorithmic thinking is a problem-solving approach in which an individual breaks down a complex problem into smaller and more specific sub-problems, and designs a series of ...

  10. Introduction to Computational Thinking: Problem Solving, Algorithms

    Acquire general techniques for problem solving; Seegeneral and concrete algorithmic techniques; Program solutions that are both computationally efficient and maintainable; Who This Book Is For . Those new to programming and computer science who are interested in learning how to program algorithms and working with other computational aspects of ...

  11. Computational/Algorithmic Thinking

    Using an algorithmic thinking to solve a mathematical problem in order to identify its mathematical structure and to generalize the solutions (e.g., in computational problem-solving) Using algorithms to provide accessible introductions to modeling, optimization, operations research, and experimental mathematics.

  12. Algorithmic Thinking

    An algorithm is a set of rules specifying the sequences of computational steps for solving a specific problem. That is, for any given input data, the algorithm produces the desired output data. Thus, an algorithm is specified as follows: A Specific Algorithm.

  13. PDF Teaching Algorithms to Develop the Algorithmic Thinking of Informatics

    As a result of this information, it can be stated that when teaching algorithms, the student acquires the logic of programming and begins to focus more on the problem-solving process. Knuth [5] pointed out that the attention paid to algorithms is common in algorithmic thinking, but not common in mathematics.

  14. PDF Algorithmic Foundations for Business Strategy

    I introduce algorithmic and meta-algorithmic models for the study of strategic problem solving, aimed at illuminating the processes and procedures by which strategic managers and firms deal with complex problems. These models allow us to explore the relationship between the complexity of an environment, the sophistication of the problem

  15. Algorithmic thinking : a problem-based introduction PDF

    The Problem Simplifying the Problem Solving the Core Problem Solution 1: Pairwise Comparisons Solution 2: Doing Less Work Hash Tables Hash Table Design Why Use Hash Tables? Problem 2: Compound Words The Problem Identifying Compound Words Solution Problem 3: Spelling Check: Deleting a Letter The Problem Thinking About Hash Tables An Ad Hoc ...

  16. [PDF] Algorithmic Problem Solving

    Algorithmic problem solving is a way of approaching and solving problems by using the advances that have been made in the principles of correct-by-construction algorithm design to leverage the capabilities provided by modern collaborative and open-source platforms. 1. Highly Influenced. 3 Excerpts.

  17. Algorithmic problem solving : Backhouse, Roland C., 1948- : Free

    Algorithmic problem solving by Backhouse, Roland C., 1948-Publication date 2011 Topics Computer algorithms, Problem solving Publisher Chichester, West Sussex : Wiley ... Pdf_module_version 0.0.15 Ppi 360 Rcs_key 24143 Republisher_date 20211014110633 Republisher_operator [email protected] Republisher_time 423

  18. What is Algorithmic Thinking? A Beginner's Guide

    Algorithmic thinking is a key component of computational thinking, which is the ability to think like a computer and approach problems in a way that is both systematic and creative. At its core, algorithmic thinking is about problem-solving. It is a way of thinking that involves breaking down complex problems into smaller, more manageable parts ...

  19. Algorithmic thinking, cooperativity, creativity, critical thinking, and

    Critical thinking promotes skills like creative thinking and problem solving (Voskoglou and Buckley 2012). Problem solving. Denning highlights another key aspect of computational thinking as problem solving where an algorithmic solution is pursued for the problem that is structured as information or data (Hu 2011). Google for Education also ...

  20. [PDF] Algorithmic thinking, cooperativity, creativity, critical

    The Computational Thinking Scale (CTS) was developed and validated to assess all students' thought processes of computational thinking for both general and specific problem-solving contexts in five dimensions: abstraction, decomposition, algorithmic thinking, evaluation and generalization. Expand

  21. (PDF) Algorithmic thinking, cooperativity, creativity, critical

    Complex problem-solving requires high-order thinking skills involving analyzing, evaluating problems, and applying various knowledge and skills as the fundamental of problem-solving (Doleck et al ...

  22. PDF Development and Evaluation of Unplugged Algorithmic Thinking Activities

    Thinking" will be referred to as "Algorithmic Thinking" in this study. Algorithmic Thinking skills are defined as the application of students' problem solving processes on computing devices by writing algorithms and programming codes to solve computer programming problems. The term algorithm is the description of the way of

  23. PDF ICT COMPETENCES ALGORITHMIC THINKING

    One of the most important competences, which is gathering more and more ground in primary and secondary education of dynamically developing countries, is algorithmic thinking. This paper is aimed at dealing with its depths. Key words: Informatics and education; Curriculum; Primary and secondary education; Algorithmic. thinking; Problem solving.

  24. Supporting next-generation educational programs that combine the ...

    Working toward design thinking that gets to the heart of problem solving. The design thinking workshop was a valuable learning opportunity, not only for the children but also for the EY team. We were able to adjust the workshop content based on the children's level of engagement, and establish our fundamental approach to design thinking.