# Test Bank for Introduction to Computer Science Using Python: A Computational Problem-Solving Focus (1st Edition)

By: Charles Dierbach
ISBN-10: 0470555157
/ ISBN-13: 9780470555156

## Resource Type Information

Authors: Charles Dierbach

\$35.00 \$30.00

## Description

Preface xxi
Acknowledgments xxv
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