Applied Computational Thinking with Python Design Algorithmic Solutions for Complex and Challenging Real-World Problems.
Applied Computational Thinking with Python provides a hands-on approach to implementation and associated methodologies that will have you up-and-running, and productive in no time. Developers working with Python will be able to put their knowledge to work with this practical guide using the computat...
| Главный автор: | |
|---|---|
| Другие авторы: | |
| Формат: | Электронная книга |
| Язык: | English |
| Публикация: |
Birmingham
Packt Publishing, Limited,
2020.
|
| Предметы: | |
| Online-ссылка: | EBSCOhost Перейти в каталог НБ ТГУ |
Оглавление:
- Cover
- Title Page
- Copyright and Credits
- Dedicated
- About Packt
- Contributors
- Table of Contents
- Preface
- Section 1: 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
- Data structures
- Summary
- Chapter 2: Elements of Computational Thinking
- Technical requirements
- Understanding computational thinking
- Problem 1
- Conditions
- Decomposing problems
- Recognizing patterns
- Problem 2
- Mathematical algorithms and generalization
- Generalizing patterns
- Designing algorithms
- Additional problems
- Problem 2
- Children's soccer party
- Problem 3
- Savings and interest
- Summary
- Chapter 3: Understanding Algorithms and Algorithmic Thinking
- Technical requirements
- 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 have to be feasible
- Algorithms are language-independent
- Designing algorithms
- Problem 1
- An office lunch
- Problem 2
- A catering company
- Analyzing algorithms
- Algorithm analysis 1
- States and capitals
- Algorithm analysis 2
- Terminating or not terminating?
- Summary
- Chapter 4: Understanding Logical Reasoning
- Technical requirements
- 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
- Identifying logic errors
- Summary
- Chapter 5: Exploring Problem Analysis
- Technical requirements
- Understanding the problem definitions
- Problem 5A
- Building an online store
- Learning to decompose problems
- Converting the flowchart into an algorithm
- Analyzing problems
- Problem 5B
- Analyzing a simple game problem
- Summary
- Chapter 6: Designing Solutions and Solution Processes
- Technical requirements
- Designing solutions
- Problem 1
- A marketing survey
- Diagramming solutions
- Creating solutions
- Problem 2
- Pizza order
- Problem 3
- Delays and Python
- Summary
- Chapter 7: Identifying Challenges within Solutions
- Technical requirements
- Identifying errors in algorithm design
- Syntax errors
- Errors in logic
- Debugging algorithms
- Comparing solutions
- Problem 1
- Printing even numbers
