Introduction to Computer Science Using Python: A Computational Problem-Solving Focus / Edition 1

Paperback (Print)
Buy Used
Buy Used from BN.com
$82.60
(Save 33%)
Item is in good condition but packaging may have signs of shelf wear/aging or torn packaging.
Condition: Used – Good details
Used and New from Other Sellers
Used and New from Other Sellers
from $84.19
Usually ships in 1-2 business days
(Save 31%)
Other sellers (Paperback)
  • All (11) from $84.19   
  • New (7) from $90.84   
  • Used (4) from $84.17   

More About This Textbook

Overview

Introduction to Computer Science Using Python: A Computational Problem-Solving Focus,recommended by Guido van Rossum, the creator of Python (“This is not your average Python book…I think this book is a great text for anyone teaching CS1”). With a focus on computational problem solving from Chapter 1, this text provides numerous hands-on exercises and examples, each chapter ending with a significant-size program demonstrating the step-by-step process of program development, testing, and debugging. A final chapter includes the history of computing, starting with Charles Babbage, containing over 65 historical images. An end-of-book Python 3 Programmers’ Reference is also included for quick lookup of Python details. Extensive instructor materials are provided for those adopting for classroom use, including an instructors’ manual, over 1,000 well-developed slides covering all fundamental topics of each chapter, source code, and test bank.

Read More Show Less

Product Details

  • ISBN-13: 9780470555156
  • Publisher: Wiley
  • Publication date: 12/25/2012
  • Edition description: New Edition
  • Edition number: 1
  • Pages: 612
  • Sales rank: 948,704
  • Product dimensions: 7.40 (w) x 9.20 (h) x 1.00 (d)

Table of Contents

Preface xxi

Acknowledgments xxv

About the Author xxvii

1 Introduction 1

MOTIVATION 2

FUNDAMENTALS 2

1.1 What Is Computer Science? 2

1.2 Computer Algorithms 6

1.3 Computer Hardware 9

1.4 Computer Software 14

COMPUTATIONAL PROBLEM SOLVING 17

1.5 The Process of Computational Problem Solving 17

1.6 The Python Programming Language 22

1.7 A First Program—Calculating the Drake Equation 29

Chapter Summary 33

Chapter Exercises 34

Python Programming Exercises 36

Program Modification Problems 37

Program Development Problems 37

2 Data and Expressions 38

MOTIVATION 39

FUNDAMENTAL CONCEPTS 40

2.1 Literals 40

2.2 Variables and Identifiers 50

2.3 Operators 57

2.4 Expressions and Data Types 61

COMPUTATIONAL PROBLEM SOLVING 67

2.5 Age in Seconds Program 67

Chapter Summary 74

Chapter Exercises 74

Python Programming Exercises 76

Program Modification Problems 76

Program Development Problems 77

3 Control Structures 79

MOTIVATION 80

FUNDAMENTAL CONCEPTS 80

3.1 What Is a Control Structure? 80

3.2 Boolean Expressions (Conditions) 81

3.3 Selection Control 89

COMPUTATIONAL PROBLEM SOLVING 104

3.5 Calendar Month Program 104

Chapter Summary 117

Chapter Exercises 118

Python Programming Exercises 120

Program Modification Problems 121

Program Development Problems 123

4 Lists 125

MOTIVATION 126

FUNDAMENTAL CONCEPTS 127

4.1 List Structures 127

4.2 Lists (Sequences) in Python 130

4.3 Iterating Over Lists (Sequences) in Python 137

4.4 More on Python Lists 144

COMPUTATIONAL PROBLEM SOLVING 147

4.5 Calendar Year Program 147

Chapter Summary 161

Chapter Exercises 162

Python Programming Exercises 164

Program Modification Problems 164

Program Development Problems 165

5 Functions 168

MOTIVATION 169

FUNDAMENTAL CONCEPTS 169

5.1 Program Routines 169

5.2 More on Functions 176

COMPUTATIONAL PROBLEM SOLVING 189

5.3 Credit Card Calculation Program 189

Chapter Summary 202

Chapter Exercises 202

Python Programming Exercises 203

Program Modification Problems 204

Program Development Problems 204

6 Objects and Their Use 206

MOTIVATION 207

FUNDAMENTAL CONCEPTS 207

6.1 Software Objects 207

6.2 Turtle Graphics 216

COMPUTATIONAL PROBLEM SOLVING 229

6.3 Horse Race Simulation Program 229

Chapter Summary 243

Chapter Exercises 243

Python Programming Exercises 244

Program Modification Problems 245

Program Development Problems 246

7 Modular Design 247

MOTIVATION 248

FUNDAMENTAL CONCEPTS 248

7.1 Modules 248

7.2 Top-Down Design 251

7.3 Python Modules 255

7.3.1 What Is a Python Module? 255

COMPUTATIONAL PROBLEM SOLVING 269

7.4 Calendar Year Program (function version) 269

Chapter Summary 284

Chapter Exercises 284

Python Programming Exercises 286

Program Modification Problems 287

Program Development Problems 287

8 Text Files 289

MOTIVATION 290

FUNDAMENTAL CONCEPTS 290

8.1 What Is a Text File? 290

8.2 Using Text Files 291

8.3 String Processing 296

8.4 Exception Handling 303

COMPUTATIONAL PROBLEM SOLVING 314

8.5 Cigarette Use/Lung Cancer Correlation Program 314

Chapter Summary 331

Chapter Exercises 332

Python Programming Exercises 333

Program Modification Problems 333

Program Development Problems 334

9 Dictionaries and Sets 337

MOTIVATION 338

FUNDAMENTAL CONCEPTS 338

9.1 Dictionary Type in Python 338

9.2 Set Data Type 346

COMPUTATIONAL PROBLEM SOLVING 356

9.3 A Food Co-op’s Worker Scheduling Simulation 356

Chapter Summary 379

Chapter Exercises 379

Python Programming Exercises 380

Program Modification Problems 380

Program Development Problems 381

10 Object-Oriented Programming 383

MOTIVATION 384

FUNDAMENTAL CONCEPTS 384

10.1 What Is Object-Oriented Programming? 384

10.2 Encapsulation 386

10.3 Inheritance 400

10.4 Polymorphism 411

10.5 Object-Oriented Design Using UML 417

COMPUTATIONAL PROBLEM SOLVING 423

10.6 Vehicle Rental Agency Program 423

Chapter Summary 453

Chapter Exercises 454

Python Programming Exercises 455

Program Modification Problems 456

Program Development Problems 457

11 Recursion 460

MOTIVATION 461

FUNDAMENTAL CONCEPTS 461

11.1 Recursive Functions 461

11.2 Recursive Problem Solving 472

11.3 Iteration vs. Recursion 476

COMPUTATIONAL PROBLEM SOLVING 477

11.4 Towers of Hanoi 477

Chapter Summary 487

Chapter Exercises 487

Python Programming Exercises 488

Program Modification Problems 489

Program Development Problems 490

12 Computing and Its Developments 491

CONTRIBUTIONS TO THE MODERN COMPUTER 492

12.1 The Concept of a Programmable Computer 492

12.2 Developments Leading to Electronic Computing 493

FIRST-GENERATION COMPUTERS (1940s–mid-1950s) 496

12.3 The Early Groundbreakers 496

12.4 The First Commercially Available Computers 503

SECOND-GENERATION COMPUTERS (mid-1950s to mid-1960s) 505

12.5 Transistorized Computers 505

12.6 The Development of High-Level Programming Languages 506

THIRD-GENERATION COMPUTERS (mid-1960s to early 1970s) 508

12.7 The Development of the Integrated Circuit (1958) 508

12.8 Mainframes, Minicomputers, and Supercomputers 512

FOURTH-GENERATION COMPUTERS (early 1970s to the Present) 515

12.9 The Rise of the Microprocessor 515

12.10 The Dawn of Personal Computing 516

THE DEVELOPMENT OF COMPUTER NETWORKS 520

12.11 The Development of Wide Area Networks 520

12.12 The Development of Local Area Networks (LANs) 521

12.13 The Development of the Internet and World Wide Web 522

Appendix 525

Index 569

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)