Your browser is ancient! Upgrade to a different browser to experience this site.

Problem Solving Using Computational Thinking

Description.

Have you ever heard that computers "think"? Believe it or not, computers really do not think. Instead, they do exactly what we tell them to do. Programming is, "telling the computer what to do and how to do it."

Before you can think about programming a computer, you need to work out exactly what it is you want to tell the computer to do. Thinking through problems this way is Computational Thinking. Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand.

The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that illustrate how computational thinking can be used to solve complex problems, and a student project that asks you to apply what they are learning about Computational Thinking in a real-world situation. This project will be completed in stages (and milestones) and will also include a final disaster response plan you'll share with other learners like you.

This course is designed for anyone who is just beginning programming, is thinking about programming or simply wants to understand a new way of thinking about problems critically. No prior programming is needed. The examples in this course may feel particularly relevant to a High School audience and were designed to be understandable by anyone.

You will learn: -To define Computational Thinking components including abstraction, problem identification, decomposition, pattern recognition, algorithms, and evaluating solutions -To recognize Computational Thinking concepts in practice through a series of real-world case examples -To develop solutions through the application of Computational Thinking concepts to real world problems

based on 980 ratings

problem solving using computational thinking

U-M Credit Eligible

problem solving using computational thinking

Chris Quintana

Associate Professor, School of Education

Know someone who would like this course? Share it with them!

Share on Facebook

Share on Twitter

Share on LinkedIn

Info for:  (choose one) Tap Enter button to open the role navigation Tap Enter button to close the role navigation

FAQ icon

Need Answers?

Directory Icon

Email, Phone, and Addresses

Graduation cap icon

Explore Degrees

  • Diversity, Inclusion, Justice, Equity (dije)
  • Michigan Education Magazine
  • Mission & Vision
  • Rooms & Floor Plans
  • Courses & Syllabi
  • Tuition & Funding
  • Center for the Study of Higher and Postsecondary Education (CSHPE)
  • Combined Program in Education and Psychology (CPEP)
  • Educational Studies (ES)
  • Educator Preparation Program (EPP)
  • Joint Program in English and Education (JPEE)
  • Learning, Equity, and Problem Solving for the Public Good (LEAPS)
  • Bachelor's
  • Master's
  • Teacher Certification
  • Other Certificates & Endorsements
  • EdHub for Community & Professional Learning

Career Services

  • Marsal School in Action
  • Student Organizations
  • James A. Kelly Learning Lever Prize
  • Center for Education Design, Evaluation and Research (CEDER)
  • Detroit P–20 Partnership
  • Featured Projects & Partners
  • Grants & Awards
  • Prospective Students
  • Admitted Students
  • Current Students
  • Visiting Scholars

Problem Solving Using Computational Thinking

Have you ever heard that computers "think"? Believe it or not, computers really do not think. Instead, they do exactly what we tell them to do. Programming is, "telling the computer what to do and how to do it."

Before you can think about programming a computer, you need to work out exactly what it is you want to tell the computer to do. Thinking through problems this way is Computational Thinking. Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand.

The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that illustrate how computational thinking can be used to solve complex problems, and a student project that asks you to apply what they are learning about Computational Thinking in a real-world situation. This project will be completed in stages (and milestones) and will also include a final disaster response plan you'll share with other learners like you.

This course is designed for anyone who is just beginning programming, is thinking about programming or simply wants to understand a new way of thinking about problems critically. No prior programming is needed. The examples in this course may feel particularly relevant to a high school audience and were designed to be understandable by anyone.

You will learn:

  • To define Computational Thinking components including abstraction, problem identification, decomposition, pattern recognition, algorithms, and evaluating solutions
  • To recognize Computational Thinking concepts in practice through a series of real-world case examples
  • To develop solutions through the application of Computational Thinking concepts to real world problems

Learn More and Enroll

QUESTIONS ?

Connect with us.

Admissions & Recruitment [email protected]

610 E. University Avenue Ann Arbor, Michigan 48109-1259

OFFICE HOURS

Monday–Friday 8:00 a.m.–5:00 p.m.

ed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit

Computational thinking & problem-solving

problem solving using computational thinking

Wing (2006, 2011) defined computational thinking as 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 a computer. [2]

Computational Thinking (CT) is a process that generalizes a solution to open-ended problems. Open-ended problems encourage full, meaningful answers based on multiple variables, which require using decomposition , data representation, generalization, modeling, and algorithms found in Computational Thinking. Computational Thinking requires the decomposition of the entire decision making process, the variables involved, and all possible solutions, ensuring that the right decision is made based on the corresponding parameters and limitations of the problem. The term computational thinking was first used by Seymour Papert in 1980 and again in 1996. Computational thinking can be used to algorithmically solve complicated problems of scale, and is often used to realize large improvements in efficiency [3]

  • 1.1 Thinking procedurally
  • 1.2 Decisions
  • 1.3 Thinking logically
  • 1.4 Thinking ahead
  • 1.5 Thinking concurrently
  • 1.6 Thinking abstractly
  • 1.7 Connecting computational thinking and program design
  • 1.8 Use of programming languages
  • 2 Standards
  • 3 References

The big ideas in computational thinking [ edit ]

Thinking procedurally [ edit ].

This topic has formative assessment as part of the article.

  • Evaluating process
  • Sub-process

Decisions [ edit ]

Thinking logically [ edit ].

  • Logical rules

Thinking ahead [ edit ]

  • Inputs and outputs
  • Pre-conditions

Thinking concurrently [ edit ]

  • Concurrency

Thinking abstractly [ edit ]

  • Abstraction

Connecting computational thinking and program design [ edit ]

  • Linear arrays
  • Applied algorithmic thinking

Use of programming languages [ edit ]

  • Conditionals
  • Collections

Standards [ edit ]

These standards are used from the IB Computer Science Subject Guide [5]

References [ edit ]

  • ↑ http://www.flaticon.com/
  • ↑ http://pact.sri.com/downloads/Assessment-Design-Patterns-for-Computational%20Thinking-Practices-Secondary-Computer-Science.pdf
  • ↑ https://en.wikipedia.org/wiki/Computational_thinking
  • ↑ Icons made by https://www.flaticon.com/authors/eucalyp from https://www.flaticon.com/
  • ↑ IB Diploma Programme Computer science guide (first examinations 2014). Cardiff, Wales, United Kingdom: International Baccalaureate Organization. January 2012.

Separate into simpler constituents.

Produce a plan, simulation or model.

Apply knowledge or rules to put theory into practice.

Provide an answer from a number of possibilities. Recognize and state briefly a distinguishing fact or feature.

Assess the implications and limitations; make judgments about the ideas, works, solutions or methods in relation to selected criteria.

Give a detailed account including reasons or causes.

Reach a conclusion from the information given.

Give a brief account.

anomalous or exceptional conditions requiring special processing – often changing the normal flow of program execution

Give a detailed account or picture of a situation, event, pattern or process.

Develop information in a diagrammatic or logical form.

Make clear the differences between two or more concepts or items.

Offer a considered and balanced review that includes a range of arguments, factors or hypotheses. Opinions or conclusions should be presented clearly and supported by appropriate evidence.

Break down in order to bring out the essential elements or structure. To identify parts and relationships, and to interpret information to reach conclusions.

Propose a solution, hypothesis or other possible answer.

The circumstances that form the setting for an event, statement, or idea, and in terms of which it can be fully understood and assessed.

Obtain the only possible answer.

A unit of abstract mathematical system subject to the laws of arithmetic.

Give a specific name, value or other brief answer without explanation or calculation.

Give the precise meaning of a word, phrase, concept or physical quantity.

  • Computational thinking
  • Programming
  • Problem-solving
  • Essential idea
  • Penn Engineering Online Degrees
  • Penn Engineering Online Dual Dual Degree
  • Online Graduate Certificates
  • Take a Course
  • On-Demand Learning
  • Computational Thinking for Problem Solving
  • Lifelong Learning

Anyone can learn to think like a computer scientist.

In this course, you will learn about the pillars of computational thinking, how computer scientists develop and analyze algorithms, and how solutions can be realized on a computer using the Python programming language. By the end of the course, you will be able to develop an algorithm and express it to the computer by writing a simple Python program.

This course will introduce you to people from diverse professions who use computational thinking to solve problems. You will engage with a unique community of analytical thinkers and be encouraged to consider how you can make a positive social impact through computational thinking.

problem solving using computational thinking

Flexible deadlines

Reset deadlines in accordance to your schedule.

problem solving using computational thinking

Shareable Certificate

Earn a digital certificate upon completion.

problem solving using computational thinking

100% online

Start instantly and learn at your own schedule.

Start building your computer science skills

Open course: computational thinking for problem solving.

  • Grades 6-12
  • School Leaders

50 Fun Earth Day Crafts and Activities 🌎!

What Is Computational Thinking and How Can I Use It In My Classroom?

Believe it or not, you can use it in everything you do.

What is computational thinking feature

You might recognize computational thinking as a trendy new buzzword. If you’re asking yourself “What is computational thinking?” or “I teach English—how am I supposed to incorporate it in my classroom?” you’re in the right place.

What is computational thinking?

Computational thinking is thinking and solving problems like a computer, or making your data easy for a computer to solve. This is not limited to math—anyone can use computational thinking. It’s about rearranging and reorganizing your thoughts and information logically. It can be used in things like coding and computer science, but you’re probably doing some of this in your daily instruction already.

Take a look at ISTE computational thinking standards .

What are the 4 pillars of computational thinking skills?

Four pillars of computational thinking

Source: Tiny Thinkers

Computational thinking (CT) consists of four pillars that guide our thinking and problem-solving: decomposition, pattern recognition, abstraction, and algorithms. We use each of these concepts every day. We can break down (or “decompose”) the pillars into smaller parts to learn more about them.

Decomposition

Decomposition means breaking a task or problem into smaller, manageable parts. We do this every day with things like cleaning the house, getting dressed, cooking a recipe, or building furniture. For example, when you clean your house, you don’t start by cleaning the whole house at once. You simplify your tasks: putting the dishes away, putting laundry away, cleaning the bathroom, and cleaning the floors.

Undoubtedly you already do this for your students. Let’s say you’re teaching your students how to write an essay for the first time. Likely, you deconstruct the essay into smaller parts and teach them separately before putting it all together. You might teach your students how to write a topic sentence, how to organize an opening paragraph, how to use supporting details, how to write a conclusion, and how they can reread their work for clarity before they try a full essay on their own.

Pattern Recognition

Pattern recognition is precisely what it sounds like: recognizing patterns. We do this from kindergarten through 12th grade in all subjects, and in our own lives too. To create steps to solve a problem, we first have to recognize the patterns that can help us solve it.

The Common Core mathematical standards require pattern recognition, so math teachers automatically have this covered. But elementary teachers live and breathe patterns with their instruction. They read books containing patterns, create patterns with blocks, play games like Duck-Duck-Goose, and they may even organize their calendars with patterned pieces.

Secondary teachers, you teach patterns too. World language instructors help students identify patterns when teaching conjugations, and science teachers may or may not break into song about the patterns on the periodic table.

Abstraction

Abstraction is the ability to cut through information to figure out what you genuinely need. You need to identify the crucial parts while tossing the fluff. This is a difficult skill to teach, but it’s necessary for CT (and honestly, for life—wouldn’t it be a dream to go to Target and come home with only the things you needed?). If we can’t remove the noise from our data, we won’t know what we need to solve our problem.

Everyone, even Latin teachers, helps their students weed out unimportant details. In Latin, we derive meaning from the declensions of words (or the endings attached to words —which happen to follow patterns ). In this case, we teach students to make meaning by focusing on the endings of words rather than the order of words since the words can go anywhere in a sentence.

Algorithms are not just for math teachers. We all use algorithms all the time. (And now that you know that, you can sound as fancy as a math teacher when you talk about your “attire algorithm,” aka your procedure for getting dressed.) Algorithms are detailed, step-by-step instructions that you use to solve a problem. When we solve problems with CT, we want to create algorithms to help us solve them while achieving consistent results.

Returning to our “attire algorithm,” we really do use one to get dressed, and it matters. While certain steps might vary from person to person, we all employ the same ideas when we get dressed. We put on underwear before pants and tops, and we put blouses and shirts on before we put on jackets. If it’s cold, we wear long sleeves and sweatshirts or sweaters. If it’s raining, we add rain boots.

Read more about the four pillars.

Why is computational thinking important in education?

Computational thinking is beneficial to anyone seeking a STEM career, especially one based in computer science or technology. But CT is also beneficial in every subject and career. It develops time-management and task-planning skills, essential components of executive functioning. It also teaches us how to give work to others when a project is too big for one person. Because it forces us to think like a computer, it instills analytical and logical reasoning too. Since it’s a way of thinking and not a specific discipline, everyone can use CT. As we integrate technology into all jobs, it’s important to make sure we can complete our work in a technologically compatible way.

Read more about the benefits of CT .

Where is computational thinking used?

Computational thinking jam board

Since computational thinking is thinking in a way that’s compatible with computers and an approach to logical problem-solving, it can be used in every subject, not just STEM. CT is all hands on deck in all grade levels. The good news is that since CT is more of a lifestyle than a subject, you can integrate it into things you are already doing with some tweaks. (Or you may have been doing this for years, in which case you can say, “I was teaching computational thinking before it was cool.”)

How can I teach computational thinking today?

Interested in trying out computational thinking? You can start today. There are endless strategies for teaching computational thinking. Sphero and Teach Your Kids Code offer some easy ways to start teaching CT for which you can easily throw together the materials needed.

One of the best (and probably one of the most hilarious) ways to teach decomposition is to pick a basic task and let your students teach you how to do it. Follow their directions literally. Be aggressively literal when you complete the steps. It can be anything from unpacking a bag to making a sandwich to washing a dish. Your class will quickly be able to identify the tiny steps they missed the first time that are necessary to complete the bigger task.

You can do any type of sort, and you’ve taught pattern recognition.

  • Spelling sorts based on rules such as vowel-consonant-e or short vowel patterns
  • Sort vocabulary words in science or social studies. Provide a word bank and have students sort them by concept or meaning.

Whatever sorting activity you do, have students discuss and explain their reasons for their groupings.

If you need to teach your class how to weed out nonsense quickly, give them a word count assignment. You don’t even need to plan for this one. Assign a writing task as usual, but give them a word count. The students will have to filter out the unimportant details to keep their word count under the limit. You can slide the limit down as they get better at this.

The House lesson, from Cris Tovani’s I Read It, But I Don’t Get It , asks students to find key information based on varying purposes. They have to identify generally important information, then identify information that would be important to a burglar, and finally, identify information that would be of interest to a realtor.

Sphero suggests the age-old peanut butter and jelly sandwich lesson to teach algorithm creation. (You may have to switch to SunButter for your peanut-allergic students). Have your students create recipes to make a PB&J sandwich and then swap with their neighbors. Then they have to make the sandwich from their peers’ recipes. Grab some popcorn as chaos ensues. But shortly afterward, you’ll find your students writing increasingly more detailed steps to get the consistent outcomes they want.

Ready for a challenge? Learn to solve a Rubik’s Cube with your class.

See other examples of CT strategies in action.

Resources and Tools for Developing Computational Thinking

If you are looking for even more ways to use computational thinking in your classroom, check out these resources.

Equip Learning shares some lesson plans by grade level for developing computational thinking.

These coding apps let students practice writing step-by-step directions.

CT Lessons offers lesson plans by subject and grade for many disciplines.

Have more questions about computational thinking and how to teach it to your students? Join the WeAreTeachers HELPLINE group on Facebook to exchange ideas and ask for advice!

Plus, check out our list of critical thinking questions..

Believe it or not, you can use computational thinking in everything you do. Check out our article for more ways to use this way of thinking!

You Might Also Like

Best Coding Apps for Kids

20 Best Coding Apps for Kids and Teens in Grades Pre-K to 12 for 2023

Because coding is a skill they can really use. Continue Reading

Copyright © 2023. All rights reserved. 5335 Gate Parkway, Jacksonville, FL 32256

  • Skip to Nav
  • Skip to Main
  • Skip to Footer

Landmark College

Four computational thinking strategies for building problem-solving skills across the curriculum

Please try again

Four light bulbs

Two decades into the 21st century, educators are still tackling the question of how to help young people prepare for a rapidly evolving work landscape . Industry leaders have long called for more emphasis on skills such as critical thinking , communication and problem-solving , though the definitions and methods for teaching all of these can vary widely. At the International Society for Technology in Education conference in July, a number of education leaders and teachers discussed a framework that can help build students’ problem-solving skills in any subject: computational thinking.

Much of the research and discussion on computational thinking in the last twenty years has focused on computer science contexts . Harvard’s Karen Brennan , for example, has led studies and developed resources on computational thinking with Scratch . But several advocates argued that these skills are not just applicable to coding and should be integrated across the curriculum. They outlined four strategies that make up the computational thinking process:

Decomposition - breaking a complex problem into smaller parts or questions

Pattern recognition - identifying trends, differences or similarities in data

Abstraction - removing unnecessary elements or data to focus on what’s useful in solving a problem

Algorithmic design - making steps and rules to solve problems

Most problems will require students to employ multiple strategies. Julie Evans , CEO of the education nonprofit Project Tomorrow, illustrated that point by asking attendees at one session to draw a cat in less than 30 seconds. No drawing looked exactly the same, but the participating educators had to quickly break their mental image of a cat into important parts, such as a tail and whiskers (decomposition). They discarded unnecessary data; for instance, a cat can be conveyed by drawing its head and body or just its face (abstraction). And they envisioned and executed steps to get from a blank page to a completed drawing (algorithmic design).

Bryan Cox, who works in the Georgia Department of Education to broaden computer science education, offered practical and pedagogical reasons for integration. Not all schools offer computer science and even at schools that do, not all students take those classes . For elementary school teachers, stand-alone computer science lessons can feel like one more thing to add to an already packed curriculum. “Integration is less disruptive,” Cox said. He also said integration mirrors how computational thinking occurs in the real world in fields like medicine, automotives, law and sports.

Over the past two years, Project Tomorrow trained 120 teachers in New York City elementary schools to integrate computational thinking into their classrooms. In one example from a second and third grade writing unit, students wrote a realistic fiction story and created a movie to bring the story to life. That may sound like a pretty typical language arts project, but the difference was in the approach, according to Project Tomorrow instructional coach David Gomez. Rather than being told how to write a realistic fiction story, students developed an algorithm for the process, with steps such as making up a pretend character, giving the character a name, imagining the setting and so on. In this example and others, Gomez said that algorithms help students acknowledge the steps they are following during a task and increase their awareness of their work processes.

Gomez works with teachers to help students recognize when they’re using other computational thinking strategies, too. One second grade teacher, for example, used a poster with sticky notes for students to reflect on which strategies they’d used in different subjects throughout the day.

Evans said she loves hearing kids identify the strategies in discussions with each other. She’s heard questions like “Did you try abstraction?” and “Why didn’t you do pattern recognition ?” from students chatting with classmates. “Those little tykes in second grade are already developing their problem-solving muscles, and they’ve got the vocabulary to have that be a sustainable skill for the future,” she said.

Crafting computational problems

Not every question or problem is a computational one. Carolyn Sykora, senior director of the ISTE Standards programs, shared three characteristics that teachers can use to identify a computational problem:

  • It’s open-ended with multiple potential solutions. “How can we design a car to get from point A to point B?” is an example that meets this criteria, whereas “How does a self-driving car work?” is a knowledge-based question.
  • It requires using or collecting data. Data doesn’t just mean numbers. It could, for example, be the lines in a poem or the notes in a musical composition.
  • It includes an opportunity to create a procedure or algorithm. In some cases, such as an engineering challenge, it’s easy to identify where this opportunity will arise. But often that’s not so clear. “Sometimes you don’t understand where the algorithm design comes into play until you do your problem decomposition,” Sykora said.

Using these characteristics can help teachers rethink curriculum, rather than trying to add something new. “We have our tried and true lessons and the things that we want our kids to learn,” Sykora said. The next step is to look at those lessons and ask, “How can we take something that’s knowledge-based and turn it into a computational problem?”

Learning

Computational Thinking: Its Purpose & Importance

by Lcom Team | Nov 14, 2023 | Blogs

Two teenage school girls standing in front of a large whiteboard side by side solving a mathematics equation on the board using computational thinking. Back view

Share this article!

Computational thinking is more related to math and algorithms than it is to digital technology. It refers to “computing” a solution by breaking down a problem into its separate parts and discovering the effective steps that reliably and effectively resolve the problem. In math, this might look like the “ order of operations ,” which defines how to decompose and solve a linear math problem.

What is the Purpose of Computational Thinking?

The purpose of computational thinking is to be able to solve complex problems in a structured, effective and repeatable way. Computational thinking, while drawing on principles from computer science and mathematics, can be applied not only to mathematical or technology-related problems, but to real-world problems as well. Therefore, computational thinking provides an effective and repeatable process for solving complex issues regardless of whether they are technologically dependent.

How Does Computational Thinking Work?  

In a previous article defining computational thinking , we discuss how computational thinking identifies a clear, defined step-by-step solution to a complex problem. But how, exactly, does one utilize computational thinking to define this solution?

Whether the problem to be solved is in a technological environment or is “offline,” (that is, not related to technology), computational thinking helps to approach, understand, analyze and resolve the problem in an effective and efficient manner. The process is as follows:

  • Decomposition. First, the problem is decomposed into smaller, more manageable parts. This helps the problem-solver more effectively understand the problem while being able to eliminate those parts that are irrelevant.
  • Pattern Recognition. In the next step, pattern recognition , the problem solver identifies patterns or connections between the different parts identified during decomposition—or even to other previously-solved problems. The purpose of this step in computational thinking is to further simplify the problem as well as to begin identifying areas of the problem that may be solved similarly.
  • Abstraction. Decomposition and pattern recognition empower the problem solver to use abstraction to identify the most relevant information within the problem while eliminating that which is either repeated elsewhere or irrelevant. This simplifies an otherwise complex problem and creates a more efficient environment for the individual to identify how the different parts of the problem may be solved.
  • Algorithmic Thinking. Algorithmic thinking is the process of defining a step-by-step solution to the problem. The key to an algorithmic solution is that it should be able to be replicated for a predictable and reliable outcome (in other words, for those familiar with billiards, “ slop shots ” don’t count). The benefit of having a replicable solution is that it is more certainly a reliable outcome if the result can be repeated. In addition, a well-defined replicable solution may be more effectively used in part or in whole to resolve other issues.

Why is Computational Thinking Important?

Computational thinking is an important future-ready skill for students and adults alike. This sophisticated process for problem-solving empowers the learner with more effective tools to solve complex problems as well as to produce more effective processes in the future.

  • Problem solving. The most well-known benefit of computational thinking is the increased ability to solve complex problems. Just like how computational thinking provides effective steps to solve a complex problem, the process of computational thinking, itself, is a computational solution for solving complex problems.
  • Automation and efficiency. Computational thinking is essential in the automation of tasks and processes, which means it’s critical for such applications as coding and automation. The applications of these are far-reaching, from science and engineering to marketing, sales, social sciences, big data and more.
  • Data Analysis. In the age of big data , computational thinking is essential for processing and interpreting vast amounts of information. It helps in extracting meaningful insights and making data-driven decisions.
  • Innovation. Computational thinking is a driver of innovation. At its core, computational thinking helps to solve complex problems, which is the same basis that inspires innovative solutions to these problems. Without the ability to problem-solve using computational thinking, it would be difficult to define and replicate innovative solutions to modern problems.
  • Career opportunities. The ability for an individual to use computational thinking to problem-solve empowers the individual with a “soft skill” that is highly valued in most industries and leadership positions. From manufacturing to finance, technology to healthcare and beyond, these industries actively seek individuals who can solve complex problems and drive innovation.

Final Thoughts

Learning.com Staff Writers

Learning.com Team

Staff Writers

Founded in 1999, Learning.com provides educators with solutions to prepare their students with critical digital skills. Our web-based curriculum for grades K-12 engages students as they learn keyboarding, online safety, applied productivity tools, computational thinking, coding and more.

Further Reading

Guide to Teaching Algorithms in Computer Programming for K-12 Students

  • Guide to Teaching Algorithms in Computer Programming for K-12 Students

by Lcom Team | Apr 9, 2024

Algorithms are the heart of computer programming, providing the step-by-step instructions that computers follow to perform tasks and solve problems....

Planning Digital Literacy Assessment: A Simplified Approach

  • Planning Digital Literacy Assessment: A Simplified Approach

by Lcom Team | Apr 4, 2024

As educators know, assessments are critical to the learning process. They provide beneficial self-checks to students, informative results to...

Technology Skills to Teach Gen Z for Future Success

  • Technology Skills to Teach Gen Z for Future Success

by Nicasia Anzalone Caires | Apr 2, 2024

Gen Z and Gen Alpha will enter a workforce that looks very different than the one their parents and grandparents experienced. Educators know it’s...

Quick Links

  • Request More Info
  • Cookie Settings

Recent news & Articles

  • Understanding Proclamation 2024 and the TA-TEKS
  • Digital Skills for North Carolina Students

problem solving using computational thinking

Computational Thinking

July 28, 2023

Explore the power of computational thinking! Learn how it enhances problem-solving, boosts critical thinking, and prepares you for the future workforce.

Main, P (2023, July 28). Computational Thinking. Retrieved from https://www.structural-learning.com/post/computational-thinking

What is Computational Thinking?

Computational thinking is the mental process of formulating concepts with enough clarity, and in a systematic enough way, that one can tell a computer how to do them. This skill, which is increasingly being recognized as foundational, equips individuals with the ability to approach and solve problems in a logical and systematic manner .

It involves breaking down complex problems into smaller, more manageable parts, abstracting these parts into forms that can be computed, and then using computational tools to compute the solutions.

The integration of computational thinking into education has been found to have significant benefits. For one, it promotes critical thinking and problem-solving skills , equipping learners with the ability to analyze and solve real-world problems more effectively. 

This is particularly valuable in today's highly digitized and connected world, where the ability to understand and manipulate digital systems is increasingly important.

Moreover, computational thinking has a significant impact on future employment opportunities. As technology continues to advance, the demand for individuals with computational thinking skills is growing in various industries. From software development to data analysis, computational thinkers are sought after for their ability to tackle complex problems and develop innovative solutions.

In conclusion, computational thinking is a valuable skill with numerous benefits. By promoting critical thinking and problem-solving skills, it not only enhances an individual's ability to approach and solve problems, but also opens up opportunities for advancement in the increasingly digital job market.

Key Insights:

  • Computational thinking is a foundational skill that involves formulating concepts in a way that a computer can understand.
  • It promotes critical thinking and problem-solving skills.
  • Computational thinking is increasingly important in today's digitized world.
  • The demand for individuals with computational thinking skills is growing in various industries.
  • Computational thinking opens up opportunities for advancement in the digital job market.

The 4 Cornerstones of Computational Thinking

Computational thinking is a problem-solving mindset that involves applying key concepts and strategies to approach complex problems in a logical and systematic manner. This approach is not limited to computer science or programming; it can be applied to various aspects of our lives.

Computational thinking encompasses four cornerstones that form the foundation of this approach: decomposition, pattern recognition, abstraction, and algorithm design.

By understanding and utilizing these cornerstones, individuals can develop a deeper understanding of problem-solving and enhance their ability to analyze and tackle challenging tasks . In this article, we will explore each of these cornerstones in detail and discuss how they contribute to the development of computational thinking skills.

Decomposition

Decomposition is a fundamental concept in computational thinking that involves breaking down complex problems into smaller, more manageable parts. It is a problem-solving approach that allows individuals to tackle intricate tasks by dividing them into simpler subtasks.

By employing decomposition in computational thinking, individuals can better understand complex problems and find efficient solutions. Breaking down a larger problem into smaller parts enables them to focus on addressing each component individually, making it easier to manage and solve the overall problem.

This process also helps in identifying patterns and relationships among the smaller parts, leading to a deeper understanding of the problem as a whole.

Decomposition plays a crucial role in problem-solving as it enhances critical thinking skills and develops effective strategies . When faced with a complex problem, decomposition allows individuals to prioritize and allocate their time effectively. By dividing the problem into smaller parts, they can allocate time to address each subtask based on its importance and urgency.

Another benefit of decomposition is the opportunity it provides for delegation and collaboration. Breaking down a complex problem into smaller parts enables individuals to distribute the workload among a team , improving efficiency and productivity.

It also fosters teamwork and communication skills as team members work together to solve the problem collectively.

Decomposition is a fundamental component of computational thinking and problem-solving. By breaking down complex problems into smaller, more manageable parts, individuals can develop a deeper understanding of the problem and approach it more effectively.

Decomposition enhances critical thinking, time management, delegation, and collaboration skills , making it an essential skill for problem-solving in various domains.

Pattern Recognition

Pattern recognition is a fundamental aspect of computational thinking and plays a crucial role in problem-solving. It involves the ability to identify similarities and differences in the details of a problem, allowing individuals to simplify complex problems by focusing on the underlying patterns.

The ability to recognize patterns is vital because it helps individuals break down a problem into smaller, more manageable parts. By identifying similarities across different components of a problem, individuals can apply a single solution to multiple instances, saving time and effort. Similarly, recognizing differences between components helps individuals understand the unique aspects of each part and tailor specific solutions accordingly.

Practical activities are an effective way to develop pattern recognition skills. Solving puzzles, participating in escape rooms, or even playing strategy games can help individuals practice identifying recurring patterns or unique elements. These activities provide an opportunity to apply pattern recognition skills in a fun and engaging context, honing problem-solving abilities in the process.

Pattern recognition is an essential aspect of computational thinking and problem-solving. By identifying similarities and differences in the details of a problem, individuals can simplify complex problems and find efficient solutions. Engaging in activities that promote pattern recognition can further enhance these skills, making problem-solving a more intuitive and effective process.

Computational thinking and pattern recognition

Abstraction

Abstraction is a fundamental concept in computational thinking that involves extracting the most relevant information from decomposed problems and generalizing it to solve the problem as a whole. It allows individuals to focus on the essential aspects of a problem and disregard irrelevant details that may distract from finding a solution.

In the context of pattern recognition, abstraction plays a crucial role in identifying relevant details and disregarding extraneous information. For example, in an escape room, participants are often presented with a series of clues, some of which are red herrings meant to mislead.

By practicing pattern generalization and abstraction, players can distinguish between relevant and irrelevant details, allowing them to solve the puzzle more efficiently.

Developing abstraction skills can begin at a young age, and hands-on activities are a great way to foster this cognitive ability in younger students. Building projects, for instance, require students to break down a complex structure into smaller components and then generalize the principles learned from each component to create a complete and functional project.

By engaging in activities that encourage abstraction, such as escape rooms or building projects , younger students can develop this crucial computational thinking skill. Abstraction not only helps students in problem-solving but also in understanding complex concepts across various disciplines.

As an essential skill for students in STEM subjects , abstraction empowers individuals to think critically and approach real-world problems with confidence and clarity.

Algorithmic Thinking

Algorithmic Thinking is a fundamental concept within Computational Thinking that involves defining a step-by-step solution to a problem that can be replicated for a predictable outcome, whether by humans or computers. It is the process of breaking down a complex task into smaller, manageable steps and organizing them in a logical sequence .

In Algorithmic Thinking, emphasis is placed on the design and structure of algorithms. An algorithm is a set of instructions that helps solve a specific problem or accomplish a particular task. These instructions are typically presented in a clear and unambiguous manner, allowing individuals or computers to follow them precisely.

The ability to think algorithmically is vital in the problem-solving process. It enables individuals to approach challenges systematically and methodically. By breaking down a problem into smaller steps, identifying patterns, and identifying the appropriate sequence of actions, algorithmic thinking helps to simplify complex problems. This structured approach enhances efficiency, accuracy, and effectiveness in finding solutions.

Furthermore, algorithm design is crucial in ensuring that the steps of the solution are well-defined, comprehensive, and optimized. A properly designed algorithm accounts for various scenarios, considering potential errors or exceptions and providing contingency plans. This systematic approach to algorithm design guarantees a more reliable and robust problem-solving process.

Algorithmic Thinking is a key aspect of Computational Thinking that involves creating step-by-step solutions with predictable outcomes. It incorporates careful algorithm design to enhance problem-solving efficiency and accuracy, whether executed by humans or computers.

By developing algorithmic thinking skills , individuals can approach challenges in a structured and systematic manner, ultimately leading to more effective problem-solving.

Computational Thinker

Computational Thinking and Its Role in Problem-Solving

Computational thinking is a powerful tool that can be applied to a variety of problem-solving scenarios, particularly in the workplace. Here are five fictional examples of how computational thinking has been used to solve complex problems:

  • Automating Repetitive Tasks : A data analyst at a tech company used computational thinking to automate a repetitive task of cleaning and organizing large datasets. By breaking down the task into simple steps and writing a script in a programming language , the analyst was able to save hours of manual work each week.
  • Optimizing Resource Allocation : A logistics manager at a shipping company used computational thinking to optimize the allocation of trucks for deliveries. By abstracting the problem and using computational tools, the manager was able to find the most efficient routes, reducing fuel costs and delivery times.
  • Improving Customer Service : A customer service manager at a retail company used computational thinking to improve the company's response time to customer inquiries. By analyzing patterns in customer complaints and creating an algorithm to prioritize responses, the company was able to improve its customer satisfaction ratings.
  • Enhancing Product Design : A product designer at a software company used computational thinking to enhance the design of a new app. By using logical reasoning to understand user needs and preferences, the designer was able to create a more user-friendly interface.
  • Predicting Market Trends : A financial analyst at an investment firm used computational thinking to predict market trends. By using computational tools to analyze historical data and identify patterns, the analyst was able to make more accurate predictions about future market movements.

These examples demonstrate the power of computational thinking in solving real-world problems. As Wing (2006) notes, "Computational thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science."

This echoes the sentiment of an expert in the field, who states, "Computational thinking is a fundamental skill for everyone, not just for computer scientists. To reading, writing, and arithmetic, we should add computational thinking to every child’s analytical ability " (Jeannette Wing).

According to a report by the Royal Society, over 60% of new jobs in STEM fields require computational thinking skills and programming experience. This statistic underscores the importance of computational thinking in today's digital age.

  • Computational thinking can be used to automate repetitive tasks, optimize resource allocation, improve customer service, enhance product design, and predict market trends.
  • Computational thinking involves solving problems, designing systems, and understanding human behavior.
  • Over 60% of new jobs in STEM fields require computational thinking skills and programming experience.
  • Computational thinking is a fundamental skill for everyone, not just for computer scientists.

Computational Thinking Skills

Computational Thinking in The Classroom

Computational thinking has become an integral part of the modern classroom, providing a framework for problem-solving that is applicable across a variety of subjects. Here are seven fictional examples of how computational thinking has been used to enhance learning outcomes in classrooms:

  • Mathematics: A Year 6 teacher incorporated computational thinking into her lesson on fractions. She encouraged students to break down the problem (decomposition), identify patterns (pattern recognition), and develop a step-by-step solution (algorithmic thinking). This approach helped students understand the concept more deeply and apply it in different contexts.
  • Science: In a Year 5 science class studying the water cycle, the teacher used computational thinking to help students understand the process. Students were asked to decompose the cycle into stages, identify the sequence of these stages (algorithmic thinking), and understand the conditions that lead to each stage (abstraction).
  • English: A Year 4 English teacher used computational thinking to teach story structure. Students decomposed a story into its basic elements, identified patterns in story structures , and created an algorithm for writing their own stories.
  • Geography: In a Year 3 geography lesson on climate zones, the teacher used computational thinking to help students understand the factors that determine a region's climate. Students decomposed the problem by considering each factor individually, identified patterns in how these factors interact, and used this understanding to predict the climate of different regions.
  • History: A Year 7 history teacher used computational thinking to help students understand the causes of World War I. Students decomposed the problem by examining each cause individually, identified patterns in how these causes led to the war, and used this understanding to discuss the likelihood of similar events happening in the future.
  • Art: In a Year 2 art class, the teacher used computational thinking to teach students about patterns in art. Students decomposed artworks into individual elements, identified patterns in these elements, and used this understanding to create their own patterned artworks .
  • Physical Education: A Year 8 PE teacher used computational thinking to help students improve their basketball skills. Students decomposed the skill of shooting a basket into individual movements, identified patterns in successful shots, and used this understanding to improve their own technique.

These examples demonstrate the versatility of computational thinking as a teaching tool . It can be applied across a range of subjects to enhance students' understanding and problem-solving skills.

Relevant Statistic: Although specific statistics on computational thinking in classrooms are limited, a report by Google and Gallup (2016) found that 60% of U.S. K-12 schools have incorporated some form of computer science into their curriculum, indicating a growing emphasis on skills like computational thinking.

Taxonomy of Computational Skills

Other Practical Applications of Computational Thinking

As we have seen, computational thinking is not limited to computer science or STEM subjects; it has practical applications in everyday life. By using computational thinking skills, individuals can approach problems and make decisions in a more systematic and logical way .

In work settings, computational thinking can enhance problem-solving skills. For instance, when faced with a complex task, breaking it down into smaller, manageable parts allows for a step-by-step solution. This approach helps to identify patterns, recognize relevant information, and design algorithms to achieve efficient results.

In personal life, computational thinking can be applied in various ways. For example, when organizing daily schedules or planning events, breaking down tasks into smaller steps can ensure smooth execution. Computational thinking also aids in decision-making processes by considering various factors, analyzing pros and cons, and making informed choices.

Furthermore, computational thinking can be used in everyday problem-solving scenarios. When confronted with a household issue, such as troubleshooting a malfunctioning appliance, individuals can apply computational thinking principles to identify the problem's root cause, isolate relevant details, and devise a solution.

The real-life applications of computational thinking are vast and diverse. By utilizing problem-solving skills and applying computational thinking, individuals can enhance their everyday lives and make more logical and informed decisions.

Computational Thinking and Mathematical thinking

How will Computational Thinking Change the Future Workforce?

Computational thinking is not just a skill for computer scientists; it's a skill that every member of the future workforce will need to have. Here are seven ways computational thinking might change the way we work in the future:

  • Legal Profession : Lawyers could use computational thinking to analyze large amounts of data in legal cases, identifying patterns and making predictions about outcomes. This could lead to more efficient and effective legal strategies.
  • Healthcare : In the healthcare sector, computational thinking could help professionals analyze patient data to predict health outcomes and develop personalized treatment plans . This could lead to improved patient care and outcomes.
  • Education : Teachers could use computational thinking to analyze student performance data, identifying patterns and making predictions about student learning outcomes. This could lead to more effective teaching strategies and improved student learning.
  • Finance : In the finance sector, computational thinking could help professionals analyze financial data to make predictions about market trends. This could lead to more effective investment strategies and improved financial outcomes.
  • Marketing : Marketers could use computational thinking to analyze consumer data, identifying patterns and making predictions about consumer behavior. This could lead to more effective marketing strategies and improved business outcomes.
  • Manufacturing : In the manufacturing sector, computational thinking could help professionals analyze production data to optimize manufacturing processes. This could lead to increased efficiency and productivity.
  • Transportation : In the transportation sector, computational thinking could help professionals analyze traffic data to optimize routes and schedules. This could lead to improved efficiency and reduced congestion.

According to a study on Education 4.0, the development of computational thinking skills is a key component of preparing students for the 21st-century workforce. As technology continues to advance , the demand for individuals with computational thinking skills is growing in various industries . 

problem solving using computational thinking

Enhance Learner Outcomes Across Your School

Download an Overview of our Support and Resources

We'll send it over now.

Please fill in the details so we can send over the resources.

What type of school are you?

We'll get you the right resource

Is your school involved in any staff development projects?

Are your colleagues running any research projects or courses?

Do you have any immediate school priorities?

Please check the ones that apply.

problem solving using computational thinking

Download your resource

Thanks for taking the time to complete this form, submit the form to get the tool.

  • Acknowledgements
  • Author List
  • Part 1. Foundations
  • 1.1. Technology Integration
  • 1.2. Connectivism
  • 1.3. Lifelong Learning
  • 1.4. Information Literacy
  • Part 2. Classroom Applications
  • 2.1. Blogging
  • 2.2. Coding
  • 2.3. Computational Thinking
  • 2.4. English Language Learning
  • 2.5. Foreign Language Teaching, Part 1
  • 2.6. Foreign Language Teaching, Part 2
  • 2.7. Gamification
  • 2.8. iPad Learning Centers
  • 2.9. Open Educational Resources
  • 2.10. STEAM Mindset
  • Part 3. Legal, Ethical, and Socially-Responsible Use
  • 3.1. Copyright and Open Licensing
  • 3.2. Digital Equity
  • 3.3. Online Professionalism
  • 3.4. Online Safety
  • 3.5. Universal Design for Learning
  • Glossary of Terms
  • Index of Topics
  • Translations

Computational Thinking

Choose a sign-in option.

Tools and Settings

Questions and Tasks

Citation and Embed Code

problem solving using computational thinking

Learning Objectives

  • Define computational thinking (CT);
  • Explain the rationale for including CT as part of core curriculum;
  • Understand research-based best practices for integrating CT with other core content at your grade level;
  • Access a wide variety of resources designed to enable you to integrate CT at your grade level.

In today's high-tech and ever-changing world, it is increasingly clear that students need to be able to think critically and resolve complex and ill-defined problems in order to truly thrive in the environment where they are one day expected to live and work (Schön, 1987; Ventura, Lai, and DiCerbo, 2017). But while few would argue the utility of teaching critical thinking and problem solving skills in schools, there is less consensus about how to do it, when to start, or what terms to use when teaching these important competencies.

One approach to teaching these skills is to teach computational thinking (CT). CT is particularly useful for the computer age, because it not only teaches critical thinking but also focuses on helping students "develop and employ strategies for understanding and solving problems in ways that leverage the power of technological methods to develop and test solutions" (ISTE, n.d., emphasis added). CT is the bread and butter of computer scientists, but it is also widely applicable for solving many other academic and non-academic problems.

CT is essentially a framework to describe a set of critical thinking and problem-solving skills, and it has gained significant traction as a viable and useful way of thinking about how to teach these skills in formal educational settings. While CT is not the only way to approach these skills, it provides a way of looking at problems so as to produce an automated or semi-automated solution that takes advantage of the unique affordances of computer technologies. It can also be beneficial in providing a common vocabulary, a wealth of resources, and a vibrant community of practice for teachers seeking to focus, coordinate, and improve efforts to guide rising generations in developing problem solving skills.

problem solving using computational thinking

Why Integrate Computational Thinking?

More than ever, we live in a world that is informed and inundated by computer technology. This fact may conjure thoughts of smartphones and personal computers, but increasingly, many everyday and traditionally non-digital objects are being designed to operate via a computer program. Some of these objects include streetlights, car engines, watches, roads, car tires, and even shoes (Hartigan, 2013).

As computer programs become more widespread, computer programming becomes an increasingly relevant skill, and many political bodies are recognizing this fact. Support for teaching computing in K-12 schools is growing in the U.S. and abroad. Several countries, including England, Finland, South Korea, and Australia, require that children learn computing or computational thinking (Rich, Jones, Belikov, Yoshikawa, and Perkins, 2017). Several U.S. states and districts have similar requirements (Partovi, 2017; EdSurge, 2016). The United States has not yet officially adopted such measures, but appears to be moving in that direction. For example, in 2017 the Trump administration announced a yearly investment of $200 million dollars into STEM education, noting that "the nature of our workforce has increasingly shifted to jobs requiring a different skill set, specifically in coding and computer science" (CNN Wire, 2017, emphasis added). Amazon, Facebook, and other major tech companies have committed a sum of over $300 million (over the period of five years) to the new initiative (Romm, 2017). Thus, increasing attention, interest, and enthusiasm are paid to the role that computer science education should have in our schools (Bers, Flannery, Kazakoff, and Sullivan, 2014; Rich et al., 2017; Sullivan and Bers, 2016; Yadav et al., 2016; Yadav et al., 2017).

But before computer programming - or coding , as it is sometimes called - many believe that today's youth (and adults) need computational thinking (CT) to better solve the problems of the 21st century. CT may be considered a precursor to learning actual coding or computer programming skills. And while this is certainly true, it can also have a much broader application. The skills, attitudes, and approaches that make up CT are fundamental, universal, transferrable, and particularly appropriate and useful for the computer age. So, while a future computer programmer certainly needs CT, it is not necessarily true that everyone who learns CT should go on to learn coding. Rather, as computer technology becomes more embedded into the fabric of every industry, professionals in every industry need to be able to think in ways that leverage those computers to solve the problems of the future.

Learning computational thinking can benefit students both economically and academically. Each year there are far more computing jobs added than there are computer science graduates, with significant job growth projected for the foreseeable future (Bureau of Labor Statistics, 2018). Furthermore, studies have linked a host of academic benefits to learning CT, including improvement in student engagement, motivation, confidence, problem-solving, communication, and STEM learning and performance (Rich et al., 2017; Yadav et al., 2017).

What Is Computational Thinking?

Stephen Wolfram (2016) stated that the "intellectual core" of computational thinking "is about formulating things with enough clarity, and in a systematic enough way, that one can tell a computer how to do them." After gathering input from over 700 computer science educators, researchers, and practitioners, the International Society for Technology in Education (ISTE) and the Computer Science Teachers Association (CSTA) (2011) issued a joint statement in which they provided an operational definition of computational thinking , which involves both a problem-solving process and a series of dispositions and attitudes.

Computational thinking may imply a certain degree of facility and familiarity with computers, but it is much more than mere tech savviness. It is a combination of disciplined mental habits, attitudes of endurance, and essential soft skills. CT allows us to not merely consume technology, but to create with technology (Yadav, Hong, and Stephenson, 2016). It is not a way of making humans more like computers, but rather of empowering humans to use computers more effectively to solve the problems of the Computer Age (Wing, 2006).

The ISTE/CSTA (2011) definition is thorough, but it may also be useful for teachers to have a few key words to keep in mind when planning lessons, guiding discussions, commenting on student work, etc. The following table is derived from the documentation of various organizations that seek to define and categorize CT in a useful way for educators (CAS Barefoot, 2014; Google, n.d.b; ISTE, 2014). This is not intended to be comprehensive, but it does provide a reasonably complete snapshot of the most crucial components of CT.

Components of CT (CAS Barefoot, 2014; Google, n.d.b; ISTE, 2014)

  • Decomposition: Breaking down data, processes, or problems into smaller, manageable parts
  • Pattern Recognition: Observing patterns, trends, and regularities in data
  • Abstraction: Making a problem more understandable by reducing unnecessary detail.
  • Algorithm Design: Developing the step by step instructions for solving this and similar problems
  • Evaluation: Ensuring that your solution is a good one.
  • Confident: believing in one's own ability to solve problems
  • Communicative: willing and able to communicate effectively with others.
  • Flexible: able to deal with change and open-ended problems
  • Tinkering: experimenting and playing
  • Creating: designing and making
  • Debugging: finding and fixing errors
  • Persevering: keeping going
  • Collaborating: working together.

Review These Terms on Quizlet

Quizlet

Thought Exercise: Problem-Solving Models

Watch this video to better understand these processes:

Problem-solving models

Questions to Ponder:

  • What might be the advantages and disadvantages of each problem-solving model?
  • Could any model be applied to any problem? How might the types of results expected from each model differ?
  • Are some problems better suited to one method than another?

Why Integrate CT in Early Childhood and Elementary Education

Establishing a way of thinking takes time, so if CT is to be truly grasped by the professionals of the future, they need to be familiarized with these concepts early and often throughout their academic career (Yadav, Mayfield, Zhou, Hambrusch, and Korb, 2014). Computational thinking is "cross-disciplinary" in nature (Yadav et al., 2017), so it makes sense to start teaching it in elementary or even preschool, where all the subjects are naturally blended together for the students within the same environment.

Studies have shown that children as young as preschool-age (approximately 4) have been able to successfully learn basic CT concepts (Sullivan and Bers, 2016; Bers et al., 2014). Studies also show that learning this can be "an engaging and rewarding" experience for the students (Bers et al., 2014).

Technology permeates our world and experience. Bers, Seddighin, and Sullivan (2013) have argued that because technology is an integral part of children's experience, early childhood education should include the study of technology. Teaching computational thinking is one way to do just that. In early childhood education, we often focus on understanding the natural world, which is certainly worth studying, but the man-made world is also worth studying. Most children are more familiar with cell phones than with polar bears, yet teachers are more likely to teach a unit on polar bears than on cell phones. We can and should study both (Bers et al., 2013).

Some early childhood practitioners may question the appropriateness of teaching computational thinking to very young students, due to prevalent and well-founded concerns about giving too much screen time to young children (NAEYC and Fred Rogers, 2012). However, these concerns can be reduced by understanding that (1) there is a wide variety of CT activities that do not require the use of a screen (e.g., unplugged  activities, screenless robots) and (2) that even activities that do involve screen time can--and should--be constructed as interactive, rather than non-interactive uses of technology (NAEYC and Fred Rogers, 2012).

Why Integrate CT in Secondary Education

Some secondary educators may understandably feel that, unless they are planning to get an endorsement in information technology education, computational thinking has little to do with them. However, teaching CT concepts in English, history, math, science, second languages, and other core and elective subjects is actually a great way to "support problem solving across all disciplines" (Google, n.d.a) Grover (2018) argues, "Like any skill, CT is best taught and learned in context, and embedded into class subjects."

If CT education is embedded across multiple subject areas at the same school, it has additional advantages, such as helping students to "make powerful connections between their classes and beyond" and "have a rich toolkit to draw from that crosses traditional subject borders" when faced with problems that are difficult to categorize within a traditional subject area (Sheldon, 2017).

Thought Exercise: CT - A 21st Century Literacy?

Many claim that computational thinking is an essential 21st Century Literacy which ought to be taught alongside reading, writing, and arithmetic in our schools. While you don't necessarily have to agree with this assessment, it is important to understand the rationale behind it.

Consider the following statements from CT education proponents, then consider the questions listed below:

Just as basic literacy in math and science are considered essential for all children to understand how the world works, education must also address the development of knowledge and skills pertaining to computing, which is now so integrally intertwined with every profession (Grover, 2018).
Computational thinking is a fundamental skill for everyone, not just for computer scientists. To reading, writing, and arithmetic, we should add computational thinking to every child's analytical ability. Just as the printing press facilitated the spread of the three Rs, what is appropriately incestuous about this vision is that computing and computers facilitate the spread of computational thinking (Wing, 2006).
  • What is a "literacy"?
  • Do you agree that computational thinking is a literacy?
  • Do you agree that it is as fundamental as reading, writing, and math in the 21st Century? Why or why not?

How to Effectively Integrate CT into Your Classroom

This section is intended as a reference. Feel free to focus on reading the parts that are most relevant to you.

Research-Based Effective Practice for CT Integration

Teaching computational thinking has traditionally been viewed as a primarily constructionist endeavor (Bers et al., 2014; Buss and Gamboa, 2017). Constructionism posits that "children can learn deeply when they build their own meaningful projects in a community of learners and reflect carefully on the process" (Bers et al., 2014). In particular, the constructionist approach described by Seymour Papert "provides children the freedom to explore their own interests through technologies (Bers, 2008) while investigating domain-specific content learning and also exercising metacognitive, problem-solving, and reasoning skills" (Bers et al., 2014).

Within this broadly constructionist framework, a variety of instructional principles and methods have been identified as effective practices for teaching computational thinking. These practices can be adapted to most grade levels and subject areas.

  • Modeling . Teachers should set an example of learning by modeling their own understanding, learning, and progress in computational thinking. Especially in the early stages, they should also model the computational thinking process for students so they understand what the learning, reflection, and revision look like (Highfield, 2015).
  • Integrating. Teachers should collaborate with other teachers to facilitate the completion of interdisciplinary culminating projects (Bers et al., 2014).
  • Releasing Responsibility Gradually. When teaching CT, educators should start with direct instruction, move to a simple guided activity, then issue an open-ended challenge or problem (Buss and Gamboa, 2017). Teachers should then continue to guide behavior, even while working/playing as a team (Highfield, 2015).
  • Encouraging. Insofar as possible, teachers should provide "encouragement and problem-solving hints and tips," rather than outright answers (Buss and Gamboa, 2017).
  • "What if you were to..."
  • "How would you..."
  • "Have you considered..."
  • Drawing out solutions on paper.
  • Discussing alternative solutions as teams.
  • Relating challenges to more familiar circumstances.
  • Using CT vocabulary across the curriculum (Yadav et al., 2014). This can reinforce students' understanding of the terms and help them see their applicability across the curriculum and in daily life. For example, a teacher might refer to a set of rules or procedures as an "algorithm"; invite students to create an "abstraction" of how they feel; or emphasize that you are practicing "pattern recognition" skills.

How and When to Use Technology in CT Education

Teachers won't be utilizing technology every time they want to teach CT: they may be simply referencing CT vocabulary, helping students learn perseverance, or engaging students in an unplugged coding activity. However, since CT does involve "leverag[ing] the power of technological methods" (ISTE, 2014), a progressive program of CT instruction will inevitably lead to some integration of technological devices.

Just as PIC-RAT can be a valuable heuristic for evaluating classroom technology integration and designing technological learning experiences, it can also help guide educators in making decisions about how and when to use technology in the CT education process. In general, teachers should strive to provide learning experiences that guide students toward the creative and transformative ends of the PIC and RAT spectrums.

For example, an elementary teacher wanting to integrate CT into her curriculum might begin by explaining some key CT concepts to her students, such as decomposition and abstraction. She might then introduce a mathematical word problem that requires the students to break the problem into component parts and filter out unnecessary detail. So far, it has not been necessary to use technology, and most uses (e.g., an online worksheet) would likely have been passive or interactive replacements of traditional practice.

However, as the teacher helps her students to learn additional aspects of math and CT, she may see organic ways to integrate technology in creative and transformative ways. For instance, she may feel that the best way to teach shape properties and algorithm design is to bring some codable robots into the classroom and have the students program them to draw regular polygonal shapes. At first, the students may have some interactive time with the robots, simply so they can learn how they function. Eventually, however, their use will become creative as they design an algorithm to meet the teacher's challenge. Such an experience may transform the learning in several ways, such as

  • helping the students make connections between math and computer science that they would not have made with mere worksheets;
  • deepening the students' perception of the relevance of both math and coding;
  • engaging students in content they might otherwise have found routine and boring.

CT in Early Childhood and Elementary Education

In addition to other research-based effective practices, the following ideas, examples and resources may be useful in an early childhood teaching context.

  • Unplugged Activities. Unplugged activities are activities that teach coding concepts without involving a computer. Students may use a paper and pencil, manipulatives, or even their own bodies to experience coding principles in a deeper way. These activities naturally allow for conversations about and connections with CT skills, attitudes, and approaches.
  • Codable Robots. Codable robots can extend the coding and CT experience of young students. Robots provide lots of opportunities to integrate mathematical and engineering concepts into their coding and CT knowledge, and the connections students make can actually support their learning in traditional core subjects.
  • Students learn about algorithms when the teacher explains what they are using the simple example of the routine students follow when they get up and come to school in the morning. Students then write their own algorithms for planting a seed and test it out with real seeds and soil (Randles, 2017).
  • A teacher uses Ozobots (small robots programmable with paper and a marker) to teach her students about states of matter, geography, and coding. The ozobot moves across a map and the students must program it to move slower in cold regions and faster in warm regions. They need to practice communication, debugging, and algorithm design in order to make this work (Randles, 2017).
  • Students create a math game with engineering toys and test every circuit before moving on to the next activity. If something doesn't work, they "debug" it. Students learn perseverance and communication skills in working together (Berdik, 2015).
  • Students stuck in a difficult problem look toward a teacher for help, but the teacher directs them to "use prior knowledge, explore and work through it." Deep learning occurs as the students learn to persevere, collaborate, and rely on the CT process (Berdik, 2015).
  • Students and the teacher together create an "algorithm" for the procedure of leaving the classroom.

Secondary Education

In addition to other research-based effective practices, consider the following ideas/examples for teaching CT in your specific subject area.

Language Arts & Foreign Language

  • Representing plot structure through abstraction (i.e., a plot diagram)
  • Logical organization and analysis of data in order to support their thesis.
  • Communicating and collaborating with others in class discussions
  • Th students also relate these skills to what they are learning in other subject areas (Barr, Harrison, and Conery, 2011).
  • Students use logic to put together a jumbled story in correct sequence (Grover, 2018).
  • Students identify patterns for different sentence types and rules for grammar (Grover, 2018).
  • Students use first-order logic to arrive at conclusion based on given facts (Grover, 2018).
  • Student construct social networks to analyze stories (Grover, 2018).
  • Students program a story with alternative pathways ("Choose your own adventure") (Grover, 2018).
  • Students analyze how algorithms affect dialogue and news feeds in social media (Angevine, 2018).
  • Student collaborate to build a story, identify any "bugs" in the story, and fix those bugs to give the story a more logical flow. (Google, n.d.c)

Social Studies

  • Students compare their modern lifestyle with the lifestyles of children from another era. They simulate the experience of children from the other era by writing about it in a blog. The teacher calls attention to the fact that they are practicing skills relevant to computational thinking, such as organizing and analyzing data logically, and representing data through an abstraction (Barr et al., 2011).
  • Students review data and identify patterns and trends in wars and other historical events. The teacher helps the students recognize that they are practicing the CT skill of "pattern recognition." Students also create visualizations of these patterns and trends, and the teacher refers to them as "abstractions" (Grover, 2018).
  • Students "create a simulation to study relationships in social science phenomena such as women's education and health." This is an abstraction (Grover, 2018).
  • Students create models or "abstractions" for social systems, social networks, or social choice (Grover, 2018).
  • Students use primary source data to study patterns of voting rights in the nation (Angevine, 2018).

Engineering

  • Students look at a map of escape routes for the school. They recognize that the map is an "abstraction" and discuss how they could create an algorithm that would define the fastest way out of the school in the event of an emergency (Barr et al., 2011).
  • Students compare and contrast the design thinking problem solving process and the computational thinking problem solving process and explore how each method can give them unique insights and solutions for engineering problems. They also discuss how the methods can be melded to provide more complete and better solutions.
  • Students use engineering computer software to design structures.
  • Students engage in a real-world construction simulation task as teams. They need to practice the skills of abstraction (drawing a design for the project), decomposition (breaking down the tasks that need to be completed). They also utilize CT approaches such as collaborating, creating, and (possibly) tinkering and debugging.
  • Students studying the diatonic scale and the concept of pitch use Scratch (a programming language) to create an "abstraction" of a xylophone. They also develop persistence as they work through a difficult problem (Barr et al., 2011).
  • Students use algorithms to study intervals, rhythm, and composition (Angevine, 2018)
  • Students explore musical patterns and create algorithms that can write a song (Google, n.d.c)

Mathematics

  • Students model functions in algebra through programs (compare them to functions in programs) (Grover, 2018).
  • Students write an algorithm (or precise sequence of steps) on how to do matrix multiplication or how to solve a quadratic equation (Grover, 2018).
  • Students use decomposition to solve word problems (Grover, 2018).
  • Students express generalizations (as algebraic representations) by identifying patterns (Grover, 2018).
  • Students interpret and visualize statistics of an athlete's performance (Angevine, 2018).
  • Students use robots to create a program that can draw any regular polygon of any regular size. They also explore how slight variations in the program can create fractal shapes.
  • Students use basic patterns to label key points on the unit circle in terms of degrees, and then follows a similar process to relabel these points in terms of radians. Students can then develop an algorithm to convert between degrees and radians based on the patterns they used to count their way around the unit circle. (Google, n.d.c)
  • Students use CT concepts to explore the linear association between variables using two sets of data. Students will read data in a spreadsheet and in a graph and identify positive and negative linear association based on the shape of the graph. (Google, n.d.c)
  • Do a species classification with explicit "If-Then" logic (younger grades) (Grover, 2018).
  • Build a computational model of a physical phenomenon (Grover, 2018).
  • Instead of playing with or manipulating pre-developed software simulations of scientific phenomenon, create (program) computational models and simulations to study and interrogate phenomena (Grover, 2018).
  • Students use computational models and processes to predict the effects of removing a species from the ecosystem (Angevine, 2018).
  • Students create simulations and abstractions that model safe and unsafe roller coaster designs (Angevine, 2018).
  • STudents model (i.e., abstract) different scientific laws and phenomena using CT concepts and approaches (Google, n.d.c).

Family and Consumer Science

  • In a child development course, students engage in metacognition about the computational thinking process, and how it can help them to solve problems and make decisions in their own lives.
  • In a sewing class, students observe common patterns in certain types of clothing. Later on, they create a pattern (i.e., an algorithm) for sewing a shirt. They also include diagrams (abstractions) within their pattern instructions.
  • In a foods class, students explore and discuss patterns across cake recipes (e.g., classes of ingredients included, order of steps, baking times and temperatures). Students may also create their own cake recipe (algorithm) and test (evaluate) it based on a set of criteria of their choosing.
  • In a personal finance class, students use computer software to track their spending over several months. They then use that data to find patterns and create graphs (i.e., abstractions) of spending patterns that can inform their future decisions.

Dance & Physical Education

  • Students learning a variety of dance moves create their own dance (algorithm) by stringing them together.
  • Students in P.E. learn about the wide variety of computational resources (e.g., apps, wearables) that can help them monitor and improve their physical wellbeing and personal health habits. They use data they collect from some of these sources to create reports (abstractions) to help them make decisions about what habits they will seek to develop.

CT Learning and Lesson Planning Resources Resources

The following table provides a number of resources for learning more about computational thinking and planning lessons that integrate its components.

Computational thinking is a method of solving problems that is both widely applicable throughout the K-12 curriculum and increasingly relevant in the 21st Century. Integrating CT into traditional core and elective subject areas can help students to make important cross-curricular connections, improve their academic performance, and develop important skills for creating solutions in the wide variety of vocations in which they will one day engage. As the popularity and relevance of CT becomes more apparent, many countries, states, and institutions are adopting it into their curriculum, so teachers should be aware of how this affects them, how it may affect them in the future, and the variety of resources they can access as needed. They are also encouraged to become as familiar as they can with CT skills, attitudes, and approaches, and to develop these competencies in their personal and professional lives.

Angevine, C. (2018, February 22). Advancing computational thinking across K-12 education. Retrieved from http://www.gettingsmart.com/2018/02/advancing-computational-thinking-across-k-12-education/

Barr, D., Harrison, J., & Conery, L. (2011). Computational thinking: A digital age skill for everyone. Learning & Leading with Technology, 38(6), 20-23. Retrieved from https://files.eric.ed.gov/fulltext/EJ918910.pdf

Berdik, C. (2015, November 23). How one school district works computational thinking into every grade and class. Retrieved from http://hechingerreport.org/how-one-school-district-works-computational-thinking-into-every-grade-and-class/

Bers, M.U. (2008). Blocks to robots: Learning with technology in the early childhood classroom. New York, NY: Teachers College Press.

Bers, M.U., Seddighin, S., & Sullivan, A. (2013). Ready for robotics: Bringing together the T and E of STEM in early childhood teacher education. Journal of Technology and Teacher Education, 21(3), 355-377.

Bers, M.U., Flannery, L., Kazakoff, E. R., & Sullivan, A. (2014). Computational thinking and tinkering?: Exploration of an early childhood robotics curriculum. Computers & Education, 72, 145-157. https://doi.org/10.1016/j.compedu.2013.10.020 .

Bureau of Labor Statistics (2018). Occupational outlook handbook. Retrieved from https://www.bls.gov/ooh/computer-and-information-technology/home.htm

Buss, A., & Gamboa, R. (2017). Teacher transformations in developing computational thinking: Gaming and robotics use in after-school settings. In P.J. Rich & C.B. Hodges (Eds.), Emerging research, practice, and policy on computational thinking (pp. 189-203). Cham, Switzerland: Springer. Retrieved from http://sci-hub.cc/downloads/1d8d/[email protected]

CAS Barefoot (2014). Computational thinking. Retrieved from https://barefootcas.org.uk/barefoot-primary-computing-resources/concepts/computational-thinking/ .

CNN Wire. (2017, September 25). President Trump announces yearly investment of $200M for STEM expansion. Retrieved from Fox News: http://fox59.com/2017/09/25/president-trump-makes-jobs-announcement/

EdSurge. (2016). Computer science for all. Retrieved from https://www.edsurge.com/research/special-reports/state-of-edtech-2016/k12_edtech_trends/computer_science

Google (n.d.a). Exploring computational thinking? Retrieved from https://edu.google.com/resources/programs/exploring-computational-thinking/

Google (n.d.b). What is computational thinking? Retrieved from https://computationalthinkingcourse.withgoogle.com/unit?lesson=8&unit=1

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

Grover, S. (2018, March 13). The 5th 'C' of 21st century skills? Try computational thinking (not coding. Retrieved from EdSurge News: https://www.edsurge.com/news/2018-02-25-the-5th-c-of-21st-century-skills-try-computational-thinking-not-coding

Hartigan, M. (2013, August 27). 10 everyday objects that can be programmed to run code. Retrieved from https://www.fastcompany.com/3016427/10-everyday-objects-that-can-be-programmed-to-run-code

Highfield, K. (2015). Stepping into STEM with young children: Simple robotics and programming as catalysts for early learning. In C. Donohue (Ed.), Technology and digital media in the early years: Tools for teaching and learning (pp. 150-161). New York, NY: Routledge.

ISTE (2014, September 11). Computational thinking for all. Retrieved from https://www.iste.org/explore/articledetail?articleid=152 ISTE. (n.d.). Standards for students. Retrieved from https://www.iste.org/standards/for-students .

ISTE, & CSTA. (2011). Operational definition of computational thinking for K-12 education. Retrieved from http://www.iste.org/docs/ct-documents/computational-thinking-operational-definition-flyer.pdf

NAEYC, & Fred Rogers Center for early Learning and Children's Media. (2012). Technology and interactive media as tools in early childhood programs serving children from birth through age 8. Retrieved from https://www.naeyc.org/sites/default/files/globally-shared/downloads/PDFs/resources/topics/PS_technology_WEB.pdf

Partovi, H. (2017). Should computer science be a mandatory class in U.S. high schools? Retrieved from https://www.quora.com/Should-Computer-Science-be-a-mandatory-part-of-a-high-school-curriculum/answer/Hadi-Partovi

Randles, J. (2017, January 27). 3 easy lessons that teach coding and computational thinking. Retrieved from https://www.iste.org/explore/articleDetail?articleid=894&category=In-the-classroom&article=

Rich, P. J., Jones, B., Belikov, O., Yoshikawa, E., & Perkins, M. (2017). Computing and engineering in elementary school: The effect of year-long training on elementary teacher self-efficacy and beliefs about teaching computing and engineering. International Journal of Computer Science Education in Schools, 1 (1), 1-20.

Romm, T. (2017, September 26). Amazon, Facebook and others in tech will commit $300 million to the White House's new computer science push. Retrieved from https://www.recode.net/2017/9/26/16364662/amazon-facebook-google-tech-300-million-donald-trump-ivanka-computer-science

Schön, D. A. (1987). Educating the reflective practitioner: Toward a new design for teaching and learning in the professions. Ann Arbor, MI: Wiley.

Sheldon, E. (2017) Computational thinking across the curriculum. Retrieved from https://www.edutopia.org/blog/computational-thinking-across-the-curriculum-eli-sheldon

Sullivan, A., & Bers, M.U. (2016). Robotics in the early childhood classroom: Learning outcomes from an 8-week robotics curriculum in pre-kindergarten through second grade. International Journal of Technology and Design Education, 26(1), 3-20. https://doi.org/10.1007/s10798-015-9304-5

Ventura, M., Lai, E., & DiCerbo, K. (2017). Skills for today: What we know about teaching and assessing critical thinking [White paper]. Retrieved March 29, 2018, from Partnership for 21st Century Learning: http://www.p21.org/storage/documents/Skills_For_Today_Series-Pearson/White_Paper_-_P21_-_Skills_for_Today-What_We_Know_about_Teaching_and_Assessing_Critical_Thinking_v5.pdf

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

Wolfram, S. (2017, June 16). How to teach computational thinking. Retrieved from https://www.wired.com/2016/09/how-to-teach-computational-thinking/

Yadav, A., Mayfield, C., Zhou, N., Hambrusch, S., & Korb, J. T. (2014). Computational thinking in elementary and secondary teacher education. ACM Transactions on Computing Education (TOCE), 14(1), 5.

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. https://doi.org/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. https://doi.org/10.1145/2994591

problem solving using computational thinking

Brigham Young University

Enoch Hunsaker is an Instructional Designer at Brigham Young University Online. He graduated with a Master's degree in Instructional Psychology and Technology from the same university in 2018. He has done substantial research and design work to help K-12 teachers integrate coding and computational thinking into their classrooms. His professional interests include purpose-centered design, agency in learning, and learning by doing.

This content is provided to you freely by EdTech Books.

Access it online or download it at https://edtechbooks.org/k12handbook/computational_thinking .

Number Dyslexia

10 Examples Of How We Use Computational Thinking In Real-life

The brain has often been compared to that of a computer and that was all because of one mental ability- Computational thinking. In essence, it is a way of solving problems, designing systems, and understanding human behavior that draws on concepts fundamental to computer science. It can also be called a thought process that is applicable to many fields, including science, engineering, medicine, humanities, and business.

And it wouldn’t be wrong to say, computational thinking is a set of skills that enables people to think like computers. Hence, many educators are now more than willing to incorporate this form of thinking in regular classrooms. 

Even though there are debates regarding its applicability in the education sector, computation thinking exercises a great deal of influence in our everyday lives, especially in today’s tech-driven world. Hence, the article below discusses some real-life areas that have employed the usage of computational thinking. 

Computation thinking: A crucial mental skill?

Computational thinking is a way of solving problems and an efficient approach to understanding the world around us. It is a valuable skill to have in today’s increasingly technology-driven world.

One key aspect of computational thinking is the ability to decompose problems. This means breaking down a large, complex problem into smaller, more manageable pieces that can be tackled individually. By breaking the problem down into smaller parts, we can more easily understand the problem and identify the necessary steps to solve it. An example of using computational thinking to decompose a problem for kids is to have them plan a birthday party.

  • Define the problem: The child wants to plan a birthday party for their friend.
  • Invitations: Who to invite, how to create and send the invitations.
  • Decorations: What decorations to buy or make, how to set up the decorations.
  • Food and drinks: What food and drinks to serve, how to make or order the food and drinks.
  • Entertainment: What games or activities to plan, how to organize and run the games or activities.
  • Inputs: guest list, budget, party theme
  • Outputs: invitations sent, decorations set up, food and drinks prepared, entertainment organized
  • Develop a solution

Another important component or process of computational thinking is the ability to recognize and identify patterns. This involves looking for repeating or predictable behaviors or structures within a problem or system. 

In the example of planning a birthday party, computational thinking can also be used to recognize and identify patterns.

  • Recognizing patterns in inputs: For example, the child may notice that they always invite the same group of friends to their parties and that they always have a similar budget. This pattern can help them make decisions about who to invite and what decorations to buy.
  • Identifying patterns in outputs: After hosting a few parties, the child may notice that certain games or activities are more popular than others, or that certain foods are always a hit. By identifying these patterns, they can make decisions about what entertainment to plan and what food to serve at future parties.
  • Recognizing patterns in problem-solving: With experience, the child may also notice patterns in their problem-solving process, such as always starting with invitations or always forgetting to plan for drinks. By recognizing these patterns, they can make a plan to address and correct them in the future.
  • Identifying patterns in feedback: After each party, the child may notice certain feedback from guests such as always requesting a certain type of food or activity. By identifying these patterns, they can make a plan to include them in future parties.

Logical reasoning is also a key component of computational thinking. This involves using logical arguments and deductive reasoning to come up with solutions to problems. It requires the ability to make inferences, draw conclusions, and evaluate the validity of arguments. In the context of planning a child’s birthday party, this could involve using logical reasoning to determine the best course of action based on a set of constraints and requirements.

For example, a child can be assisted in logical reasoning to determine the best location for the party based on factors such as cost, size, and proximity to the child’s home. Additionally, they can use logical reasoning to determine the best date and time for the party based on factors such as the availability of guests and his/her schedule. Once the child has determined the best location, date, and time for the party, he/she can then use logical reasoning to make decisions about the party’s theme, decorations, food, and activities based on the preferences of the child and the guests. 

Finally, computational thinking involves the ability to analyze and evaluate the results of one’s work. This includes the ability to test and debug solutions, as well as to critically assess the validity and reliability of one’s findings. In the context of planning a child’s birthday party, analyzing and evaluating results can be used to determine the success of the party and identify areas for improvement.

For example, after the party, children can analyze data such as the number of guests who attended, and the total cost, and take feedback from the guests to determine if the party was successful. They can also evaluate the effectiveness of the party by assessing if the party met the goal, for example, the children had fun, the guests were entertained, and the party was within budget.

This information can be used to identify areas for improvement, such as reducing costs or increasing the number of guests. Additionally, it can be used to make decisions about future parties, such as whether to have the party in the same location or to try a different location.

Overall, computational thinking is a crucial mental skill and a valuable asset in today’s technological landscape that can be applied in a wide range of fields and disciplines, including computer science, engineering, business, and more.

Real-life examples of computational thinking

From concrete thinking to abstract thinking , each of these has plenty of practical uses that come into use on a daily basis. Similarly, here are 10 real-life examples of how computational thinking, influences various behaviors and daily activities, but may or may not have caught our attention

1. Planning a vacation

Planning a vacation

Computational thinking can be used to help in planning a vacation by breaking down the process into manageable tasks, identifying patterns and commonalities, and analyzing and evaluating results. For example, travelers use abstraction to break down the planning process into smaller tasks such as choosing a destination, determining a budget, and researching accommodations.

Further, Generalization is applied by identifying patterns and commonalities between different vacation options, such as cost, climate, and activities. This helps them narrow down their options and make decisions more efficiently.  Logical reasoning to determine the best time to go based on factors such as weather, crowds, and cost. After the vacation, analyzing and evaluating results can be done by assessing the vacation’s success and identifying areas for improvement, such as reducing costs or finding more activities. 

2. Designing a building

Designing a building

Architects and engineers use computational thinking to design buildings and other structures. They create models and simulations to test the stability and feasibility of different design options. For instance, abstraction can help with breaking down the design process into smaller tasks such as creating a floor plan, determining the structural system, and selecting materials. Generalization can be applied by identifying patterns and commonalities between different design options, such as building codes and regulations, energy efficiency, and aesthetic preferences.

Finally, logical reasoning can be used to make decisions such as choosing between different materials based on factors such as cost, durability, and sustainability. Additionally, logical reasoning is used to determine the best building layout based on factors such as functionality, safety, and accessibility. Once the building is designed, analyzing and evaluating results can be done by assessing the building’s performance and identifying areas for improvement, such as reducing energy consumption or increasing the natural light. This information can be used to make decisions about future building designs and to plan them more efficiently.

3. Predicting the weather

Predicting the weather

Predicting the weather using computational thinking is a process that involves using data, models, and algorithms to make predictions about future weather conditions. The process starts with Meteorologists collecting a large amount of data from various sources such as weather stations, satellites, and radars. This data is then analyzed and processed to identify patterns and trends that can be used to make predictions.

Next, using the acquired data, mathematical models and algorithms are applied to simulate the weather conditions and make predictions. The outcome is a forecast that predicts the weather for a specific time and location. The predictions are then evaluated for their accuracy using historical data, and any errors or discrepancies are analyzed to identify areas for improvement.

4. Diagnosing diseases

Diagnosing diseases

Medical professionals use computational thinking to analyze patient data and make diagnoses based on patterns and trends. For example, generalization is applied by identifying patterns and commonalities between different diseases and their symptoms. Next, in the diagnosis,  logical reasoning is used to make decisions such as choosing the best diagnostic test based on factors such as the patient’s symptoms and medical history.

Once the diagnosis is made, analyzing and evaluating results is done by assessing the accuracy of the diagnosis and identifying areas for improvement, such as incorporating more data sources or using more advanced models. This information can be used to make decisions about future diagnoses and to improve their accuracy.

5. Detecting fraud

Detecting fraud

Financial institutions use computational thinking to analyze data and identify patterns that may indicate fraudulent activity. In the case of fraud, generalization helps with the identification of different types of fraud, while logical reasoning is used to make decisions such as choosing the best method to detect fraud based on factors such as the type of fraud, the data available, and the resources.

Once fraud is detected, analyzing and evaluating results can be done by assessing the effectiveness of the detection method and identifying areas for improvement, such as incorporating more data sources or using more advanced models. This information is now being implemented to make decisions about future fraud detection and to improve their accuracy.

6. Personalizing recommendations

Personalizing recommendations

Companies like Netflix and Amazon use computational thinking to analyze customer data and make recommendations for products or content that may be of interest. For instance, AI behind companies like Netflix collects data and then uses logical reasoning in their system to suggest content and products. Such companies are always on the look for better recommendation algorithms that use computational thinking. 

7. Analyzing social media trends

Analyzing social media trends

Marketing firms use computational thinking to analyze data from social media platforms and identify trends and patterns that can inform marketing strategies. For instance, the recognition of patterns is the most effective strategy in social media campaigns. Whenever a particular song or video shows engagement, more firms jump on the bandwagon. Finally, they use analytics tools to track their engagement and profits, derived through participation in social media trends. 

8. Self-driving cars

 Self-driving cars

Self-driving cars are an example of how computational thinking is applied in real-world technology. It uses computational thinking to analyze data from sensors and cameras to navigate roads and make decisions about when to turn, stop, or accelerate. 

The problem of safely navigating a self-driving car on the road can be broken down into several smaller problems. Engineers and researchers use a variety of techniques from computer science, such as image processing, machine learning, and control theory to help the car,  perceive and understand its environment, including detecting and identifying other vehicles, pedestrians, and obstacles, determining its position and orientation on the road, and plan a safe and efficient path to its destination, and then control its motion to follow that path.

9. Robotics

 Robotics

Computational thinking can be used to help robotics or robots in many ways. Robots are complex systems that require a combination of hardware and software to perform a variety of tasks. For example, in order to make a robot capable of performing a task, such as moving from one point to another, several sub-problems need to be solved, such as its ability to perceive and understand its environment, including detecting and identifying obstacles, and its ability to plan a safe and efficient path to its destination, and then control its motion to follow that path. Additionally, computational thinking is also used in the robot’s decision-making process, which is based on the logical reasoning of the machine. 

10. Virtual assistants

 Virtual assistants

Virtual assistants, such as Amazon’s Alexa or Google Assistant, use computational thinking in order to understand and respond to user commands and queries. The problem of understanding and responding to user input was broken down into several smaller problems and virtual assistants were equipped with the ability to accurately transcribe spoken words into text,  understand the meaning of the user’s input and extract relevant information, determine an appropriate response based on the user’s input and the current context of the conversation, and convert the text-based response into speech. All of these features were added by carefully decomposing the problem and then formulating solutions as per computational thinking. 

Computational thinking in real life is getting its due credit after decades. All thanks to the high computational thinkers that have a variety of advantages. Such thinkers apart from having used computational thinking in the above-mentioned examples, are able to identify the key components of a problem, can easily recognize patterns and relationships in data and use them to make predictions and solve problems, and think abstractly and use abstract models to represent and solve problems. Hence,  computational thinking is one of the most realistic and problem-oriented types of thinking and in real life computational thinking can be a relevant and important skill to possess. 

Manpreet Singh

An engineer, Maths expert, Online Tutor and animal rights activist. In more than 5+ years of my online teaching experience, I closely worked with many students struggling with dyscalculia and dyslexia. With the years passing, I learned that not much effort being put into the awareness of this learning disorder. Students with dyscalculia often misunderstood for having  just a simple math fear. This is still an underresearched and understudied subject. I am also the founder of  Smartynote -‘The notepad app for dyslexia’, 

Leave a Comment Cancel reply

You must be logged in to post a comment.

TERC

Publications

Including neurodiversity in computational thinking.

Jodi Asbell-Clarke, et al. Asbell-Clarke J, Dahlstrom-Hakki I, Voiklis J, Attaway B, Barchas-Lichtenstein J, Edwards T, Bardar E, Robillard T, Paulson K, Grover S, Israel M, Ke F and Weintrop D (2024) Including neurodiversity in computational thinking. Front. Educ. 9:1358492. doi: 10.3389/feduc.2024.1358492

The foundational practices of Computational Thinking (CT) present an interesting overlap with neurodiversity, specifically with differences in executive function (EF). An analysis of CT teaching and learning materials designed for differentiation and support of EF show promise to reveal problem-solving strengths of neurodivergent learners.

To examine this potential, studies were conducted using a computer-supported, inclusive, and highly interactive learning program named INFACT that was designed with the hypothesis that all students, including neurodivergent learners, will excel in problem solving when it is structured through a variety of CT activities (including games, puzzles, robotics, coding, and physical activities) and supported with EF scaffolds. The INFACT materials were used in 12 treatment classrooms in grades 3–5 for at least 10  h of implementation. Pre-post assessments of CT were administered to treatment classes as well as 12 comparison classes that used 10  h of other CT teaching and learning materials. EF screeners were also used with all classes to disaggregate student results by quartile of EF.

Students using INFACT materials showed a significant improvement in CT learning as compared to comparison classes. Students with EF scores in the lower third of the sample showed the greatest improvement.

This study shows promising evidence that differentiated activities with EF scaffolds situated across several contexts (e.g., games, puzzles, physical activities, robotics, coding) promote effective CT learning in grades 3–5.

Including Neurodiversity in Computational Thinking

Related People: Jodi Asbell-Clarke , Ibrahim Dahlstrom-Hakki , Teon Edwards , Erin Bardar , Tara Robillard , and Kelly Paulson

Related Publications

How neurodiversity can help fill the cybersecurity workforce shortage, inclusive vr through inclusive co-design with neurodiverse learners, the impact of visual and auditory distractions on the performance of neurodiverse students in virtual reality (vr) environments, related products & materials.

EdGE

Related Related Projects

INFACT

Applying a Complex Systems Perspective to Investigate the Relationship between Choreography and Agent-based Modeling as Tools for Scientific Sense-making

Collaborative Research: Exploring the Mathematics of Biological Ecosystems using Data Science (EMBEDS)

Collaborative Research: Exploring the Mathematics of Biological Ecosystems using Data Science (EMBEDS)

Exploring Data Science Through the Lens of Civics Education

Exploring Data Science Through the Lens of Civics Education

Forum for Equity in Elementary Mathematics

Forum for Equity in Elementary Mathematics

Diálogos

Center for Equitable Family STEM Learning

Biomimicry as an Authentic Anchor

Biomimicry as an Authentic Anchor

Sound Travels

Sound Travels

Celebrating Diversity from Space

Celebrating Diversity from Space

problem solving using computational thinking

Correlation analysis between sub-element of technological thinking disposition and computational thinking of gifted students in South Korea

  • Published: 18 April 2024

Cite this article

  • Yong-Woon Choi 1 ,
  • In-gyu Go   ORCID: orcid.org/0000-0003-1136-3336 2 &
  • Yeong-Jae Gil 3  

Explore all metrics

The purpose of this study is to derive a correlation between the technological thinking disposition and the computational thinking ability of gifted students in Korea. The correlation between each element was analyzed by looking at the sub-elements of computational thinking according to the components of technological thinking disposition. The experiment was conducted from September 2019 to February 2021 with 217 students of I Gifted School in Incheon, South Korea. The collected data were analyzed with Pearson's correlation coefficient using the statistical program R using Google COLAB. A summary of the study results is as follows. First, regarding the correlation between technological thinking ability, among the 6 components of technological thinking disposition, technological creativity and expression disposition and technological manipulation disposition show the highest correlation at 0.851. This shows that students who have an excellent ability to implement algorithms with new ideas or express them in various other attempts when implementing programs for gifted students also tend to enjoy program coding or have a tendency to like coding. Second, concerning the correlation between the technological thinking disposition and the sub-factors of computational thinking, some elements showed negative correlations and some had almost no correlation index. Students with high technological curiosity, however, tended to show a 0.287 in the parallelism factor compared to other factors. This showed a generally high trend. It can be said that students who want to know the functions, uses, forms, and characteristics of functions while implementing programs tend to have a better ability to divide large tasks into smaller tasks and process them simultaneously compared with other sub-elements of computational thinking. Third, regarding the correlation between computational thinking skills, the correlation between data analysis and pattern recognition was the highest at 0.637. This indicates that students who have an excellent ability to analyze a given coding problem also can find rules in data, showing that students at gifted schools in Korea tend to enjoy problem-solving.

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

problem solving using computational thinking

Similar content being viewed by others

problem solving using computational thinking

Computational Thinking Assessment – Towards More Vivid Interpretations

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

problem solving using computational thinking

Tasks for Assessing Computational Thinking Skills at Secondary School Level

problem solving using computational thinking

Exploring the Correlations Between the Dimensions of Computational Thinking and Problem-Solving Concepts Through Students’ Perspectives

Aho, A. V. (2012). Computation and computational thinking. The Computer Journal, 55 (7), 832–835. https://doi.org/10.1093/comjnl/bxs074

Article   Google Scholar  

Araujo, A. L. S. O., Andrade, W. L., Guerrero, D. D. S., & Melo, M. R. A. (2019). How many abilities can we measure in computational thinking? A study on the bebras challenge. In Proceedings of the 50th ACM technological symposium on computer science education (pp. 545–551). https://doi.org/10.1145/3287324.3287405 .

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.

BBC. (2018). KS3 computer science: Introduction to computational thinking—Revision 1. Retrieved from www.bbc.com/education/guides/zp92mp3/revision .

Bers, M. U., Flannery, L., Kazakoff, E. R., & Sullivan, A. (2014). Computational thinking and tinkering: Exploration of an early childhood robotics curriculum. Computers & Education, 72 , 145–157.

Calcagni, A., Lonati, V., Malchiodi, D., Monga, M., Morpurgo, A. (2017). Promoting computational thinking skills: Would you use this bebras task? In: Dagienė, V., & Hellas, A. (eds), Informatics in Schools: Focus on Learning Programming. ISSEP 2017. Lecture Notes in Computer Science, vol. 10696. Springer, Cham. https://doi.org/10.1007/978-3-319-71483-7_9 .

Chalmers, C. (2018). Robotics and computational thinking in primary school. International Journal of Child-Computer Interaction, 17 , 93–100.

Chen, G., Shen, J., Barth-Cohen, L., Jiang, S., Huang, X., & Eltoukhy, M. (2017). Assessing elementary students’ computational thinking in everyday reasoning and robotics programming. Computers & Education, 109 , 162–175.

Chiazzese, G., Arrigo, M., Chifari, A., Lonati, V., & Tosto, C. (2019). Educational robotics in primary school: Measuring the development of computational thinking skills with the bebras tasks. In Informatics. Multidisciplinary Digital Publishing Institute (Vol. 6, No. 4, p. 43). https://doi.org/10.3390/informatics6040043 .

Computer Science Teachers Association (2011). CSTA K-12 Computer Science Standards, Revised 2011. Retrieved from http://scratch.ttu.ee/failid/CSTA_K-12_CSS.pdf .

Dagienė, V., & Sentance, S. (2016). It’s computational thinking! Bebras tasks in the curriculum. In International conference on informatics in schools: Situation, evolution, and perspectives (pp. 28–39). Springer, Cham. https://doi.org/10.1007/978-3-319-46747-4_3 .

Denning, P. J. (2009). The profession of IT Beyond computational thinking. Communications of the ACM, 52 (6), 28–30.

Furber, S. (2012). Shut down or restart? The way forward for computing in UK Schools. In London, England: The Royal Society . Retrieved from http://royalsociety.org/education/policy/computing-in-schools/report .

Google (2017). Computational Thinking Concepts Guide. Retrieved from http://computationalthinking.pbworks.com/w/file/fetch/108605812/ComputationalThinkingConceptsGuide.pdf .

Gouws, L., Bradshaw, K., & Wentworth, P. (2013). First-year student performance in a test for computational thinking. In Proceedings of the South African institute for computer scientists and information technologists conference . (pp. 271–277).

Halfin, H. H. (1973). Technology: a process approach . West Virginia University. https://www.proquest.com/dissertations-theses/technology-process-approach/docview/302702084/se-2?accountid=15179 .

Hemmendinger, D. (2010). A plea for modesty. Acm Inroads, 1 (2), 4–7.

Hill, R. B., & Wicklein, R. C. (1999). A factor analysis of primary mental processes for technological problem-solving. Journal of Industrial Teacher Education, 36 (2), 83–100.

Google Scholar  

International Society for Technology in Education (ISTE). (2011). Retrieved from www.iste.org/computational-thinking .

Jang, J. E. (2018). Comparing two structural correlations among variables affecting computational thinking in elementary schools with and without computer science education programs. In Department of educational technology the graduate school Ewha Womans University.

Key Stage 3. (2017). Introduction to computational thinking. Retrieved from http://www.bbc.co.uk/education/guides/zp92mp3/revision .

Kim, B. S. (2014). Programming education program based on PPS to improve computational thinking ability. In A thesis for a doctorate, Major in Computer Education Faculty of Science Education Graduate School JEJU National University.

Kim, T. H. (2015). STEAM education program based on programming to improve computational thinking ability. In A thesis for a doctorate, major in computer education faculty of science education graduate school JEJU National University.

Korkmaz, Ö., Çakir, R., & Özden, M. Y. (2017). A validity and reliability study of the computational thinking scales (CTS). Computers in Human Behavior, 72 , 558–569.

Kwon, H. J.(2005). A model of technological creativity based on the perceptions of technology-related experts. In Department of Industrial Education, Graduate School of Chungnam National University, KOREA

Kwon, D. Y. (2010). Algorithmic brick based tangible robot and hybrid programming environments for enhancing computational thinking . a thesis for a doctorate, Major of Computer Education Faculty of Science Education Graduate School KOREA University.

Lee, E. K. (2009). A robot programming teaching and learning model to enhance computational thinking ability. In Major in Computer Education Graduate School of Korea National University of Education Chung-Buk, KOREA.

Lee, I., Martin, F., Denner, J., Coulter, B., Allan, W., Erickson, J., Malyn-Smith, J., & Werner, L. (2011). Computational thinking for youth in practice. Acm Inroads , 2 (1), 32–37. https://doi.org/10.1145/1929887.1929902 .

Leonard, J., Buss, A., Gamboa, R., Mitchell, M., Fashola, O. S., Hubert, T., & Almughyirah, S. (2016). Using robotics and game design to enhance children’s self-efficacy, STEM attitudes, and computational thinking skills. Journal of Science Education and Technology, 25 , 860–876.

Lockwood, J., & Mooney, A. (2018). Developing a computational thinking test using Bebras problems.

Lonati, V., Malchiodi, D., Monga, M., & Morpurgo, A. (2017). Bebras as a teaching resource: classifying the tasks corpus using computational thinking skills. In Proceedings of the 2017 ACM conference on innovation and technology in computer science education (pp. 366–366). https://doi.org/10.1145/3059009.3072987 .

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

Mioduser, D. (1998). Framework for the study of the cognitive nature and architecture of technological problem-solving. Journal of Technology Education and Design., 8 (2), 167–184. https://doi.org/10.1023/A:1008824125352

MOE (2015). Software Education Guidance. Korean Ministry of Education .

Nam, S. G. (2010). Development of the technological thinking disposition measurement instrument. In Unpublished doctoral dissertations, Chungnam national university.

National Research Council. (2010). Report of a workshop on the scope and nature of computational thinking. National Academy Press, Washington, DC. http://www.nap.edu/openbook.php?record_id=12840 .

Noh, J., & Lee, J. (2020). Effects of robotics programming on the computational thinking and creativity of elementary school students. Educational Technology Research and Development, 68 , 463–484.

Norris, S. P. (1994). The meaning of critical thinking test performance: The effects of abilities and dispositions on scores . Critical thinking: Current research, theory and practice. Dordrecht, the Netherlands: Kluwer. 22.

Nunnally, J. C. (1978). An overview of psychological measurement. In Clinical diagnosis of mental disorders: A handbook , 97–146.

Papert, S. (1996). An exploration in the space of mathematics education. International Journal of Computers for Mathematical Learning, 1 (1), 95–123.

Salomon, G. (1994). To be or not to be (mindful). Paper presented at the Annual Meeting of the American Education Research Association . April 4–8, New Orleans, LA.

Schwab, K. (2016). The fourth industrial revolution . World Economic Forum.

Selby, C. C. (2012). Promoting computational thinking with programming. In Proceedings of the 7th workshop in primary and secondary computing education . https://doi.org/10.1145/2481449.2481466 .

Simon, T. R. (1985). Biology and behavior of the endangered Hawaiian dark-rumped petrel. Condor, 87 , 229–245.

Song, J. M. (2011). Puzzle Education Based on Computational Thinking Using Scratch. In A thesis for a master, Major in Computer Education Faculty of Science Education Graduate School at KOREA University.

Swaid, S. I. (2015). Bringing computational thinking to STEM education. Procedia Manufacturing, 3 , 3657–3662. https://doi.org/10.1016/j.promfg.2015.07.761

Tishman, S., & Andrade, A. (1995). Thinking dispositions: A review of current theories, practices, and issues. ACCTION report #1. Washington, DC. ACCTION.

Wicklein, R. C., & Rojewski, J. W. (1999). Toward a 'Unified Curriculum Framework' for Technology Education. https://scholar.lib.vt.edu/ejournals/JITE/v36n4/wicklein.html .

Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49 (3), 33–35.

Yadav, A., Mayfield, C., Zhou, N., Hambrusch, S., & Korb, J. T. (2014). Computational thinking in elementary and secondary teacher education. ACM Transactions on Computing Education (TOCE), 14 (1), 1–16.

Yang, K., Liu, X., & Chen, G. (2020). The influence of robots on students‟ computational thinking: A literature review. International Journal of Information and Education Technology, 10 (8), 627–631.

Yu, J. H., & Kim, J. H. (2008). A Conceptual Study on Computational Thinking in Problem-solving Process. The Journal of Creative Informatics & Computing Education, 2 (2), 15–24.

Download references

Author information

Authors and affiliations.

Incheon Academy of Science and Arts, Incheon, South Korea

Yong-Woon Choi

ChunCheon National University of Education, Chuncheon, South Korea

Incheon Jangdo Elementary School, Incheon, South Korea

Yeong-Jae Gil

You can also search for this author in PubMed   Google Scholar

Corresponding author

Correspondence to In-gyu Go .

Additional information

Publisher's note.

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Choi, YW., Go, Ig. & Gil, YJ. Correlation analysis between sub-element of technological thinking disposition and computational thinking of gifted students in South Korea. Int J Technol Des Educ (2024). https://doi.org/10.1007/s10798-024-09888-4

Download citation

Accepted : 08 March 2024

Published : 18 April 2024

DOI : https://doi.org/10.1007/s10798-024-09888-4

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

  • Technology education
  • Technological thinking disposition
  • Computational thinking
  • Find a journal
  • Publish with us
  • Track your research

Search code, repositories, users, issues, pull requests...

Provide feedback.

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly.

To see all available qualifiers, see our documentation .

  • Notifications

The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that illustrate how computational thinking can be used to solve complex problems

ruchi-115/Coursera-Problem-Solving-Using-Computational-Thinking

Folders and files, repository files navigation, coursera-problem solving using computational thinking..

The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that illustrate how computational thinking can be used to solve complex problems, and a student project that asks you to apply what they are learning about Computational Thinking in a real-world situation.

  • To define Computational Thinking components including abstraction, problem identification, decomposition, pattern recognition, algorithms, and evaluating solutions
  • To recognize Computational Thinking concepts in practice through a series of real-world case examples
  • To develop solutions through the application of Computational Thinking concepts to real world problems
  • Final project on disaster plan.

IMAGES

  1. Computational Thinking

    problem solving using computational thinking

  2. Developing Computational Thinking

    problem solving using computational thinking

  3. Internet for Educators: Week Six: Computational Thinking & Coding

    problem solving using computational thinking

  4. Core Concepts Of Computational Thinking For Problem Solving

    problem solving using computational thinking

  5. K12 Computational Thinking Resources

    problem solving using computational thinking

  6. what is computational thinking and problem solving

    problem solving using computational thinking

VIDEO

  1. Problem solving using computational thinking through case study#computational thinking#शिक्षण परिषद

  2. ITC1171

  3. Improving Empathy Skills Using Problem Solving

  4. How to use problem solving in remote learning?

  5. Problem Solving Using Algebraic Models

  6. Problem Solving Using Computational Thinking Quiz Answers

COMMENTS

  1. Problem Solving Using Computational Thinking

    Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand. The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that ...

  2. How to Use Computational Thinking to Solve Problems Like a Pro

    Algorithms. Finding steps to solve the smaller problems which will then lead to a solution for the main problem. You can use computational thinking in many aspects of your life. However, it is particularly helpful when it comes to solving everyday problems. That's because it breaks down a complex problem into manageable parts.

  3. Problem Solving Using Computational Thinking

    Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand. The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that ...

  4. Computational Thinking Defined

    Computational Thinking is a set of techniques for solving complex problems that can be classified into three steps: Problem Specification, Algorithmic Expression, and Solution Implementation & Evaluation.The principles involved in each step of the Computational Thinking approach are listed above and discussed in detail below.

  5. Problem Solving Using Computational Thinking

    The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that illustrate how computational thinking can be used to solve complex problems, and a student project that asks you to apply what they are learning about Computational Thinking in a real-world situation. This project will be completed in stages (and milestones ...

  6. Computational thinking & problem-solving

    Computational Thinking (CT) is a process that generalizes a solution to open-ended problems. Open-ended problems encourage full, meaningful answers based on multiple variables, which require using decomposition, data representation, generalization, modeling, and algorithms found in Computational Thinking. Computational Thinking requires the ...

  7. Computational thinking

    Computational thinking (CT) refers to the thought processes involved in formulating problems so their solutions can be represented as computational steps and algorithms. In education, CT is a set of problem-solving methods that involve expressing problems and their solutions in ways that a computer could also execute. It involves automation of processes, but also using computing to explore ...

  8. Computational Thinking for Problem Solving

    In this course, you will learn about the pillars of computational thinking, how computer scientists develop and analyze algorithms, and how solutions can be realized on a computer using the Python programming language. By the end of the course, you will be able to develop an algorithm and express it to the computer by writing a simple Python ...

  9. PDF TECH TIP: Computational Thinking

    TECH TIP: Computational Thinking Computational thinking (CT) at its core is a problem-solving process that can be used by everyone, in a variety of content areas and everyday contexts. Computational thinking is an approach in which you break down problems into distinct parts, look for similarities, identify the relevant information and

  10. Computational Thinking is What You Need

    Computational thinking is a problem-solving framework that algorithmically breaks down a task into what I like to call atomic tasks. It involves designing a step-by-step algorithmic approach to solving a problem, identifying similarities and inefficiencies, and evaluating the relative importance of each step. ...

  11. Computational Thinking for Problem Solving

    About the Course. Computational thinking is the process of approaching a problem in a systematic manner and creating and expressing a solution such that it can be carried out by a computer. But you don't need to be a computer scientist to think like a computer scientist! In fact, we encourage students from any field of study to take this course.

  12. Discovering computational thinking in everyday problem solving: A

    Using a multiple case study approach, we tracked how seven university students used computational thinking to solve the everyday problem of a route planning task as part of an 8-week-long Python programming course. ... Computational thinking is a problem solving skill. Computational thinking is different from programming.

  13. What Is Computational Thinking? (Plus How To Teach It)

    Computational thinking is thinking and solving problems like a computer, or making your data easy for a computer to solve. This is not limited to math—anyone can use computational thinking. It's about rearranging and reorganizing your thoughts and information logically. It can be used in things like coding and computer science, but you're ...

  14. Four computational thinking strategies for building problem-solving

    Two decades into the 21st century, educators are still tackling the question of how to help young people prepare for a rapidly evolving work landscape.Industry leaders have long called for more emphasis on skills such as critical thinking, communication and problem-solving, though the definitions and methods for teaching all of these can vary widely.

  15. Computational Thinking: Its Purpose & Importance

    Computational thinking is a driver of innovation. At its core, computational thinking helps to solve complex problems, which is the same basis that inspires innovative solutions to these problems. Without the ability to problem-solve using computational thinking, it would be difficult to define and replicate innovative solutions to modern problems.

  16. Creative Learning in Problem Solving and Development of Computational

    Additionally, Computational Thinking involves solving problems using models, abstractions, organization, and decomposition of these elements in an algorithmic way and thus can contribute to the development of an individual's ability to be creative. Therefore, this study aims at understanding the relationship between creative learning in ...

  17. Computational Thinking

    Computational thinking is a foundational skill that involves formulating concepts in a way that a computer can understand. It promotes critical thinking and problem-solving skills. Computational thinking is increasingly important in today's digitized world. The demand for individuals with computational thinking skills is growing in various ...

  18. Computational Thinking

    Thought Exercise: Problem-Solving Models Computational Thinking is an effective model of problem solving, but it is only one model. Others include scientific thinking or the scientific method (which is used by scientists to answer questions about how and why the world works) and design thinking (which is used by designers and engineers to design objects and experiences).

  19. 10 Examples Of How We Use Computational Thinking In Real-life

    By breaking the problem down into smaller parts, we can more easily understand the problem and identify the necessary steps to solve it. An example of using computational thinking to decompose a problem for kids is to have them plan a birthday party. Define the problem: The child wants to plan a birthday party for their friend.

  20. Including Neurodiversity in Computational Thinking

    The foundational practices of Computational Thinking (CT) present an interesting overlap with neurodiversity, specifically with differences in executive function (EF). An analysis of CT teaching and learning materials designed for differentiation and support of EF show promise to reveal problem-solving strengths of neurodivergent learners. To ...

  21. Problem Solving Using Computational Thinking

    This video is about: Problem Solving Using Computational Thinking | Coursera | All Week Solutions with Assignment.. Course Link to Enroll:https://www.courser...

  22. Correlation analysis between sub-element of technological thinking

    The concept of CT. CT is a term first used in a paper and coined by Professor Papert of MIT University.Papert systematized the computing process in research on children's procedural thinking and proposed CT to utilize computing devices as creative tools for problem-solving.Subsequently, Professor Wing of Carnegie Mellon University presented the paper "Computational thinking", which led to ...

  23. ruchi-115/Coursera-Problem-Solving-Using-Computational-Thinking

    Coursera-Problem Solving Using Computational Thinking. The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that illustrate how computational thinking can be used to solve complex problems, and a student project that asks you to apply what they are learning about ...