Book Image

Applied Computational Thinking with Python

By : Sofía De Jesús, Dayrene Martinez
Book Image

Applied Computational Thinking with Python

By: Sofía De Jesús, Dayrene Martinez

Overview of this book

Computational thinking helps you to develop logical processing and algorithmic thinking while solving real-world problems across a wide range of domains. It's an essential skill that you should possess to keep ahead of the curve in this modern era of information technology. Developers can apply their knowledge of computational thinking to solve problems in multiple areas, including economics, mathematics, and artificial intelligence. This book begins by helping you get to grips with decomposition, pattern recognition, pattern generalization and abstraction, and algorithm design, along with teaching you how to apply these elements practically while designing solutions for challenging problems. You’ll then learn about various techniques involved in problem analysis, logical reasoning, algorithm design, clusters and classification, data analysis, and modeling, and understand how computational thinking elements can be used together with these aspects to design solutions. Toward the end, you will discover how to identify pitfalls in the solution design process and how to choose the right functionalities to create the best possible algorithmic solutions. By the end of this algorithm book, you will have gained the confidence to successfully apply computational thinking techniques to software development.
Table of Contents (21 chapters)
Section 1: Introduction to Computational Thinking
Section 2:Applying Python and Computational Thinking
Section 3:Data Processing, Analysis, and Applications Using Computational Thinking and Python
Other Books You May Enjoy

Understanding input and output in computational thinking

In order to better understand input and output, we will take a look at computational thinking problems in this section. As we go through the design process of the algorithms, we will focus on identifying the inputs needed and what output we require from our algorithms. Let's take a look at our first problem.

Problem 1 – Building a Caesar cipher

A Caesar cipher is a system of cryptography used to code messages. Cryptography is used to secure information so that only the intended users can read the messages. The Caesar cipher uses a shift in the letters to encode the messages. For example, the letter a shifted 3 places would be d. To build an algorithm that does this for us, we'll need a few things on hand:

  • A message that will be coded
  • How much we'll shift each letter
  • A printed coded message

Let's think about what the aforementioned points mean. The message will need to be...