1 option
Applied computational thinking with Python : algorithm design for complex real-world problems / Sofía de Jesús, Dayrene Martinez.
- Format:
- Book
- Author/Creator:
- Jesús, Sofía de, author.
- Martinez, Dayrene, author.
- Language:
- English
- Subjects (All):
- Computational learning theory.
- Python (Computer program language).
- Physical Description:
- 1 online resource (438 pages) : illustrations
- Edition:
- Second edition.
- Place of Publication:
- Birmingham, UK : Packt Publishing Ltd., 2023.
- Summary:
- 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.
- Contents:
- Cover
- Copyright
- Contributors
- Table of Contents
- Preface
- Part 1: An Introduction to Computational Thinking
- Chapter 1: Fundamentals of Computer Science
- Technical requirements
- Introduction to computer science
- Learning about computers and the binary system
- Understanding theoretical computer science
- Algorithms
- Coding theory
- Computational biology
- Data structures
- Information theory
- Automata theory
- Formal language theory
- Symbolic computation
- Computational geometry
- Computational number theory
- Learning about a system's software
- Operating systems
- Application software
- Understanding computing
- Architecture
- Programming languages
- Learning about data types and structures
- Data types
- Summary
- Chapter 2: Elements of Computational Thinking
- Understanding computational thinking
- Problem 1
- conditions
- Decomposing problems
- Recognizing patterns
- Problem 2
- mathematical algorithms and generalization
- Generalizing patterns
- Designing algorithms
- Additional problems
- Problem 3
- children's soccer party
- Problem 4
- savings and interest
- Summary
- Chapter 3: Understanding Algorithms and Algorithmic Thinking
- Defining algorithms in depth
- Algorithms should be clear and unambiguous
- Algorithms should have inputs and outputs that are well defined
- Algorithms should have finiteness
- Algorithms should be feasible
- Algorithms should be language independent
- an office lunch
- a catering company
- Analyzing algorithms
- Algorithm analysis 1
- states and capitals
- Algorithm analysis 2
- terminating or not terminating?
- Chapter 4: Understanding Logical Reasoning
- Understanding the importance of logical reasoning
- Applying inductive reasoning
- Applying deductive reasoning
- Using Boolean logic and operators
- The and operator
- The or operator
- The not operator
- Chapter 5: Errors
- Understanding errors
- Syntax errors
- Learning to identify logical errors
- Errors and debugging
- Chapter 6: Exploring Problem Analysis
- Understanding the problem definitions
- Problem 6A
- building an online store
- Learning how to decompose problems
- Converting the flowchart into an algorithm
- Analyzing problems
- Problem 6B
- analyzing a simple game problem
- Chapter 7: Designing Solutions and Solution Processes
- Designing solutions
- a marketing survey
- Diagramming solutions
- Creating solutions
- pizza order
- Delays and Python
- Chapter 8: Identifying Challenges within Solutions
- Identifying errors in algorithm design
- Syntax errors
- Notes:
- Includes index.
- OCLC-licensed vendor bibliographic record.
- ISBN:
- 9781837631087
- 1837631085
- OCLC:
- 1416903327
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.