
Discovering Computer Science
Interdisciplinary Problems, Principles, and Python Programming
- 750 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
Discovering Computer Science
Interdisciplinary Problems, Principles, and Python Programming
About this book
Discovering Computer Science: Interdisciplinary Problems, Principles, and Python Programming introduces computational problem solving as a vehicle of discovery in a wide variety of disciplines. With a principles-oriented introduction to computational thinking, the text provides a broader and deeper introduction to computer science than typical introductory programming books.Organized around interdisciplinary problem domains, rather than programming language features, each chapter guides students through increasingly sophisticated algorithmic and programming techniques. The author uses a spiral approach to introduce Python language features in increasingly complex contexts as the book progresses.The text places programming in the context of fundamental computer science principles, such as abstraction, efficiency, and algorithmic techniques, and offers overviews of fundamental topics that are traditionally put off until later courses.The book includes thirty well-developed independent projects that encourage students to explore questions across disciplinary boundaries. Each is motivated by a problem that students can investigate by developing algorithms and implementing them as Python programs.The book's accompanying website — http://discoverCS.denison.edu — includes sample code and data files, pointers for further exploration, errata, and links to Python language references.Containing over 600 homework exercises and over 300 integrated reflection questions, this textbook is appropriate for a first computer science course for computer science majors, an introductory scientific computing course or, at a slower pace, any introductory computer science course.
Trusted by 375,005 students
Access to over 1 million titles for a fair monthly price.
Study more efficiently using our study tools.
Information
CHAPTER 1
What is computation?
Computing Research News (1993)

1.1 PROBLEMS AND ABSTRACTION
Table of contents
- Cover
- Half Title
- Title Page
- Copyright Page
- Table of Contents
- Preface
- Acknowledgments
- About the author
- CHAPTER 1 What is computation?
- CHAPTER 2 Elementary computations
- CHAPTER 3 Visualizing abstraction
- CHAPTER 4 Growth and decay
- CHAPTER 5 Forks in the road
- CHAPTER 6 Text, documents, and DNA
- CHAPTER 7 Designing programs
- CHAPTER 8 Data analysis
- CHAPTER 9 Flatland
- CHAPTER 10 Self-similarity and recursion
- CHAPTER 11 Organizing data
- CHAPTER 12 Networks
- CHAPTER 13 Abstract data types
- APPENDIX A Installing Python
- APPENDIX B Python library reference
- Bibliography
- Index
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app