Starting Out with Programming Logic and Design

Series
Pearson
Author
Tony Gaddis  
Publisher
Pearson
Cover
Softcover
Edition
4
Language
English
Total pages
656
Pub.-date
February 2015
ISBN13
9780133985078
ISBN
0133985075
Related Titles


Product detail

Product Price CHF Available  
9780133985078
Starting Out with Programming Logic and Design
139.00 approx. 7-9 days

Free evaluation copy for lecturers


Description

Starting Out with Programming Logic and Design is a language-independent introductory programming book, teaching students programming concepts and logic without assuming any previous programming experience. 

Designed for beginners, the text is clear and approachable, making the complex concepts accessible to every student. In this new edition, Gaddis uses updated, contemporary examples to familiarize students with models and logical thought processes used in programming without further complicating them with language syntax. By using easy-to-understand pseudocode, flowcharts, and other tools, Gaddis illustrates how to design the logic of programs. 

 

The book is ideal for a programming logic course taught as a precursor to a language-specific introductory programming course, or for the first part of an introductory programming course.

Features

Starting Out with Programming Logic and Design features:

 

A strong foundation for future success

  • A language-independent approach allows students to gain confidence and build skills before moving on to a more comprehensive language-specific course.
  • Contemporary coverage and Gaddis’s renowned writing style appeals to today’s students.

 

Compatible with a range of tools

  • Starting Out with Programming Logic and Design is compatible with the Starting Out With... series, which includes books on Alice, Visual Basic®, C++, and Java™. View other titles in the series here.
  • Student Online Resources are available on the Gaddis Series resource page at www.pearsonhighered.com/gaddis:
  • VideoNotes are step-by-step video tutorials specifically designed to enhance the programming concepts presented in Gaddis: Starting Out with Programming Logic and Design, 3e. Students can view the entire problem-solving process outside of the classroom—when they need help the most. VideoNotes are available with the purchase of a new copy of select titles. Click the link for a brief demo.
  • Access to the Programming Language Companions for Python, Java, Visual Basic, and C++ specifically designed to accompany the Third Edition of this textbook are available for download. The companions introduce the Java™, Python®, Visual Basic®, and C++ programming languages, and correspond on a chapter-by-chapter basis with the textbook. Many of the pseudocode programs that appear in the textbook also appear in the companions, implemented in a specific programming language.
  • A link to download the RAPTOR flowcharting environment. RAPTOR is a flowchart-based programming environment developed by the US Air Force Academy of Computer Science.
  • Appendix D: Answers to Checkpoint Questions provides answers to the Checkpoint questions that appear throughout the text.
  • Programming Language Companions. Language companions have been added for Python 3 and C++. All of the book's language companions are available on the book's resource site at www.pearsonhighered.com/gaddis.

 

Progressive, customizable instruction

  • Program design, selection structures, and repetition structures—key topics that beginners need to master—are covered slowly using multiple examples.
  • Menu-driven programming and input validation are covered in separate chapters, allowing instructors to reorder coverage.
  • Detailed guidance for students designing their first program. A new section titled Designing Your First Program has been added to Chapter 2. This section takes the student through the process of analyzing a problem and determining its requirements. The student sees an example of how a program's input, processing, and output can be determined, as a prelude to writing pseudocode and drawing flowcharts.

Emphasis and analysis of core concepts

  • Functions are covered early, but with enough flexibility to be moved later in the course.
  • An appendix, Getting Started with Alice, presents an overview of the Alice programming environment.
  • The In The Spotlight section shows the student how to examine the steps that are taken to manually perform a calculation (determining cell phone overage fees), and then convert those steps to a computer algorithm.
  • Debugging Exercises. A set of Debugging Exercises has been added to most of the chapters. The student examines a set of pseudocode algorithms and identifies logical errors.
  • File specification documentation and print spacing charts. File specification documentation and print spacing charts are discussed in Chapter 10.
  • Pseudocode quick reference guide. A quick reference guide to the pseudocode used in the book appears in Appendix C
  • NEW! An explanation of read-only memory, or ROM, has been added to Chapter 1.
  • REVISED! The section on secondary storage in Chapter 1 has been updated to include a discussion of cloud storage.
  • NEW! IPO charts are now introduced in Chapter 2.
  • NEW! Added a discussion to Chapter 2 about adding parentheses to a math expression to enhance the expression’s clarity, even when they are unnecessary to get the correct result.
  • NEW! Off-page connectors for flowcharts have been introduced in Chapter 2, and added to the flowchart reference in Appendix B.
  • NEW! A discussion of easier maintenance as an additional benefit of modularization has been added to Chapter 3.
  • NEW! A cautionary warning about the use of reference variables has been added to Chapter 3.
  • REVISED! The section on local variables in Chapter 3 has been expanded with an additional example and a diagram showing the scope of two variables with the same name in different modules.
  • NEW! A discussion of how the order of subexpressions in a compound Boolean expression can affect code efficiency in a language that performs short-circuit evaluation has been added to Chapter 4.
  • NEW! A discussion of how and why statements that call functions are written differently than statements that call modules has been added to Chapter 6.
  • NEW! A discussion of how some of the more popular languages always pass arrays by reference has been added to Chapter 8.
  • NEW! A new and better example of control-break processing has been added to Chapter 10.
  • NEW! Appendix D is a new appendix on converting decimal numbers to binary.
  •  NEW! New motivational programming exercises have been added to several chapters.
  • REVISED! The book’s language companions have been updated. All of the book’s language companions are available on the book’s resource site at www.pearsonhighered.com/gaddis.
  • NEW! A new application, Flowgorithm, is available to support the book. Flowgorithm is free software that allows you to create programs using simple flowcharts. It may be downloaded from www.flowgorithm.org.

 

 

 

New to this Edition

Emphasis and analysis of core concepts

  • An explanation of read-only memory, or ROM, has been added to Chapter 1.
  • REVISED! The section on secondary storage in Chapter 1 has been updated to include a discussion of cloud storage.
  • IPO charts are now introduced in Chapter 2.
  • Added a discussion to Chapter 2 about adding parentheses to a math expression to enhance the expression’s clarity, even when they are unnecessary to get the correct result.
  • Off-page connectors for flowcharts have been introduced in Chapter 2, and added to the flowchart reference in Appendix B.
  • A discussion of easier maintenance as an additional benefit of modularization has been added to Chapter 3.
  • A cautionary warning about the use of reference variables has been added to Chapter 3.
  • The section on local variables in Chapter 3 has been expanded with an additional example and a diagram showing the scope of two variables with the same name in different modules.
  • A discussion of how the order of subexpressions in a compound Boolean expression can affect code efficiency in a language that performs short-circuit evaluation has been added to Chapter 4.
  • A discussion of how and why statements that call functions are written differently than statements that call modules has been added to Chapter 6.
  • A discussion of how some of the more popular languages always pass arrays by reference has been added to Chapter 8.
  • A new and better example of control-break processing has been added to Chapter 10.
  • Appendix D is a new appendix on converting decimal numbers to binary.
  • New motivational programming exercises have been added to several chapters.
  • REVISED! The book’s language companions have been updated. All of the book’s language companions are available on the book’s resource site at www.pearsonhighered.com/gaddis.
  • A new application, Flowgorithm, is available to support the book. Flowgorithm is free software that allows you to create programs using simple flowcharts. It may be downloaded from www.flowgorithm.org.

 

Table of Contents

Preface

Acknowledgments

About the Author

Chapter 1 Introduction to Computers and Programming

Chapter 2 Input, Processing, and Output

Chapter 3 Modules

Chapter 4 Decision Structures and Boolean Logic

Chapter 5 Repetition Structures

Chapter 6 Functions

Chapter 7 Input Validation

Chapter 8 Arrays

Chapter 9 Sorting and Searching Arrays

Chapter 10 Files

Chapter 11 Menu-Driven Programs

Chapter 12 Text Processing

Chapter 13 Recursion

Chapter 14 Object-Oriented Programming

Chapter 15 GUI Applications and Event-Driven Programming

Appendix A ASCII/Unicode Characters

Appendix B Flowchart Symbols

Appendix C Pseudocode Reference

Appendix D Converting Decimal Numbers to Binary

Appendix E Answers to Checkpoint Questions

Index

 

 

Author

Tony Gaddis is the principal author of the Starting Out With . . . series of textbooks. Tony has twenty years of experience teaching computer science courses, primarily at Haywood Community College. He is a highly acclaimed instructor who was previously selected as the North Carolina Community College “Teacher of the Year” and has received the Teaching Excellence award from the National Institute for Staff and Organizational Development. The Starting Out With . . . series includes introductory books covering Programming Logic and Design, C++, Java, Microsoft® Visual Basic, C#®, Python, and Alice, all published by Pearson.