Programming Logic and Design Seventh Edition

Slides:



Advertisements
Similar presentations
Chapter 2: Understanding Structure
Advertisements

Programming Logic and Design Eighth Edition
CHAPTER 5: Repetition Control Structure. Objectives  To develop algorithms that use DOWHILE and REPEAT.. UNTIL structures  Introduce a pseudocode for.
Understanding the Three Basic Structures
ALGORITHMS THIRD YEAR BANHA UNIVERSITY FACULTY OF COMPUTERS AND INFORMATIC Lecture two Dr. Hamdy M. Mousa.
An Object-Oriented Approach to Programming Logic and Design
Programming Logic and Design Seventh Edition
Programming Logic and Design, Third Edition Comprehensive
Programming Logic and Design Seventh Edition
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Chapter 4 – C Program Control Outline 4.1Introduction.
C Lecture Notes 1 Program Control (Cont...). C Lecture Notes 2 4.8The do / while Repetition Structure The do / while repetition structure –Similar to.
Chapter 2: Algorithm Discovery and Design
Program Design and Development
An Object-Oriented Approach to Programming Logic and Design Chapter 6 Looping.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved The switch Multiple-Selection Statement switch.
ECE122 L9: While loops March 1, 2007 ECE 122 Engineering Problem Solving with Java Lecture 9 While Loops.
Programming Logic and Design Sixth Edition
Chapter 2: Algorithm Discovery and Design Invitation to Computer Science, C++ Version, Third Edition.
1 4.8The do/while Repetition Structure The do/while repetition structure –Similar to the while structure –Condition for repetition tested after the body.
Selection Control Structures Simple Program Design Third Edition A Step-by-Step Approach 4.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Flow Control (Switch, do-while, break) Outline 4.7The.
Programming Logic and Design Fifth Edition, Comprehensive
Chapter 4 C Program Control. Objectives In this chapter, you will learn: –To be able to use the for and do … while repetition statements. –To understand.
Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and Elizabeth Drake Chapter 2: Flowcharts.
6 Chapter 61 Looping Programming Logic and Design, Second Edition, Comprehensive 6.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 6 Looping.
An Introduction to Programming with C++ Sixth Edition Chapter 7 The Repetition Structure.
An Object-Oriented Approach to Programming Logic and Design Fourth Edition Chapter 4 Looping.
Dale Roberts 1 Program Control - Algorithms Department of Computer and Information Science, School of Science, IUPUI CSCI N305.
Programming Structure
CHAPTER 2: Understanding Structure. Objectives 2  Learn about the features of unstructured spaghetti code  Understand the three basic structures: sequence,
Programming Logic and Design, Introductory, Fourth Edition1 Understanding the Three Basic Structures Structure: a basic unit of programming logic Any program.
2 Chapter 21 Understanding Structure Programming Logic and Design, Second Edition, Comprehensive 2.
Structured Programming The Basics. Control structures They control the order of execution What order statements will be done in, or whether they will.
Programming Logic and Design Fifth Edition, Comprehensive
An Object-Oriented Approach to Programming Logic and Design Second Edition Chapter 2 Understanding Structure.
P ROGRAMMING L OGIC GWDA123 Sharon Kaitner, M.Ed. Winter 2015: Week 2.
Pseudocode. Algorithm A procedure for solving a problem in terms of the actions to be executed and the order in which those actions are to be executed.
C Program Control September 15, OBJECTIVES The essentials of counter-controlled repetition. To use the for and do...while repetition statements.
Programming Logic and Design Fifth Edition, Comprehensive Chapter 4 Making Decisions.
Programming Logic and Design Fourth Edition, Introductory Chapter 2 Understanding Structure.
Structured Programming The Basics
ALGORITHMS AND FLOWCHARTS
Understand Problem Solving Tools to Design Programming Solutions
Chapter 4 – C Program Control
More on the Selection Structure
REPETITION CONTROL STRUCTURE
Programming Logic and Design Fourth Edition, Comprehensive
CSC113: Computer Programming (Theory = 03, Lab = 01)
Programming Logic and Design Eighth Edition
Chapter 5: Repetition Structures
Programming Fundamentals
Using the Priming Read Priming read (or priming input):
A Beginner’s Guide to Programming Logic, Introductory
Designing and Debugging Batch and Interactive COBOL Programs
Chapter 6: Repetition Structures
Chapter 5: Repetition Structures
Understanding the Three Basic Structures
Chapter 2- Visual Basic Schneider
Chapter 8: More on the Repetition Structure
Chapter 2- Visual Basic Schneider
Data and Flowcharts Session
Boolean Expressions to Make Comparisons
Data and Flowcharts Session
Lecture 7 Algorithm Design & Implementation. All problems can be solved by employing any one of the following building blocks or their combinations 1.
ICT Gaming Lesson 2.
Selection Structures: Single-alternative
Data and Flowcharts Session
The while Looping Structure
Presentation transcript:

Programming Logic and Design Seventh Edition Chapter 3 Understanding Structure

Objectives In this chapter, you will learn about: The disadvantages of unstructured spaghetti code The three basic structures—sequence, selection, and loop Using a priming input to structure a program The need for structure Recognizing structure Structuring and modularizing unstructured logic Programming Logic and Design, Seventh Edition

The Disadvantages of Unstructured Spaghetti Code Logically snarled program statements Often a complicated mess Programs often work but are difficult to read and maintain Confusing and prone to error Unstructured programs Do not follow the rules of structured logic Structured programs Follow the rules of structured logic Programming Logic and Design, Seventh Edition

Figure 3-1 Spaghetti code logic for washing a dog Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures Basic unit of programming logic Sequence structure Perform actions in order No branching or skipping any task Selection structure (decision structure) Ask a question, take one of two actions Dual-alternative ifs or single-alternative ifs Loop structure Repeat actions while a condition remains true Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Figure 3-2 Sequence structure Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) No Yes Figure 3-3 Selection structure Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Dual-alternative ifs Contain two alternatives The if-then-else structure if someCondition is true then do oneProcess else do theOtherProcess endif Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Single-alternative ifs An else clause is not required null case Situation where nothing is done if employee belongs to dentalPlan then deduct $40 from employeeGrossPay Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Figure 3-4 Single-alternative selection structure Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Loop structure Repeats a set of actions while a condition remains true Loop body Also called repetition or iteration Condition is tested first in the most common form of loop The while…do or while loop Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Figure 3-5 Loop structure Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Loop structure while testCondition continues to be true do someProcess while you continue to be hungry take another bite of food determine if you still feel hungry Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) All logic problems can be solved using only sequence, selection, and loop Structures can be combined in an infinite number of ways Stacking structures Attaching structures end-to-end End-structure statement Indicates the end of a structure The endif statement ends an if-then-else structure The endwhile statement ends a loop structure Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Figure 3-6 Structured flowchart and pseudocode with three stacked structures Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Any individual task or step in a structure can be replaced by a structure Nesting structures Placing one structure within another Indent the nested structure’s statements Block A group of statements that execute as a single unit Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Figure 3-7 Flowchart and pseudocode showing nested structures— a sequence nested within a selection Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Figure 3-8 Flowchart and pseudocode showing nested structures— a loop nested within a sequence, nested within a selection Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Figure 3-9 Flowchart and pseudocode for a selection within a loop within a sequence within a selection Programming Logic and Design, Seventh Edition

Understanding the Three Basic Structures (continued) Structured programs have the following characteristics: Include only combinations of the three basic structures Each structure has a single entry point and a single exit point Structures can be stacked or connected to one another only at their entry or exit points Any structure can be nested within another structure Programming Logic and Design, Seventh Edition

Using a Priming Input to Structure a Program Priming input (or priming read) Reads the first input data record Is outside the loop that reads the rest of the records Helps keep the program structured Analyze a flowchart for structure one step at a time Watch for unstructured loops that do not follow this order First ask a question Take action based on the answer Return to ask the question again Programming Logic and Design, Seventh Edition

Using a Priming Input to Structure a Program (continued) Figure 3-15 Structured, but nonfunctional, flowchart of number-doubling problem Programming Logic and Design, Seventh Edition

Using a Priming Input to Structure a Program (continued) Figure 3-16 Functional but unstructured flowchart Programming Logic and Design, Seventh Edition

Figure 3-17 Functional, structured flowchart for the number-doubling problem Programming Logic and Design, Seventh Edition

Figure 3-18 Structured but incorrect solution to the number-doubling problem Programming Logic and Design, Seventh Edition

Understanding the Reasons for Structure Clarity—unstructured programs are confusing Professionalism—other programmers expect it Efficiency—most languages support it Ease of maintenance—other programmers find it easier to read Supports modularity—easily broken down into modules It can be difficult to detect whether a flowchart is structured Programming Logic and Design, Seventh Edition

Recognizing Structure A Structured Flowchart Figure 3-20 Example 2 Programming Logic and Design, Seventh Edition

Recognizing Structure (continued) An Unstructured Flowchart Figure 3-21 Example 3 Programming Logic and Design, Seventh Edition

Figure 3-23 Structured dog-washing flowchart and pseudocode Programming Logic and Design, Seventh Edition

Figure 3-24 Modularized version of the dog-washing program Programming Logic and Design, Seventh Edition

Summary Spaghetti code Three basic structures Priming input Statements that do not follow rules of structured logic Three basic structures Sequence, selection, and loop Combined by stacking and nesting Priming input Statement that reads the first input value prior to starting a structured loop Programming Logic and Design, Seventh Edition

Summary (continued) Structured techniques promote: Clarity Professionalism Efficiency Modularity Flowcharts can be made structured by untangling Logical steps can be rewritten to conform to the three structures Programming Logic and Design, Seventh Edition