Programming Logic and Design Sixth Edition Chapter 5 Looping.

Slides:



Advertisements
Similar presentations
Programming with Microsoft Visual Basic th Edition
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.
Programming Logic and Design Sixth Edition
Programming Logic and Design, Third Edition Comprehensive
Objectives In this chapter, you will learn about:
CSE 1301 Lecture 6B More Repetition Figures from Lewis, “C# Software Solutions”, Addison Wesley Briana B. Morrison.
Repeating Actions While and For Loops
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 5 Looping.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition Chapter 5: Looping by Tony.
Chapter 5: Loops and Files.
Writing a Complete Program
© 2004 Pearson Addison-Wesley. All rights reserved5-1 Iterations/ Loops The while Statement Other Repetition Statements.
An Object-Oriented Approach to Programming Logic and Design Chapter 6 Looping.
Chapter 5: Repetition Statements. In this chapter, you will learn about: Basic loop structures while loops Interactive while loops for loops Loop programming.
C How to Program, 6/e Summary © by Pearson Education, Inc. All Rights Reserved.
REPETITION STRUCTURES. Topics Introduction to Repetition Structures The while Loop: a Condition- Controlled Loop The for Loop: a Count-Controlled Loop.
Chapter 3 Making Decisions
Programming Logic and Design Fifth Edition, Comprehensive
An Object-Oriented Approach to Programming Logic and Design Fourth Edition Chapter 5 Arrays.
Mr. Dave Clausen1 La Cañada High School Chapter 6: Repetition Statements.
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.
Repetition Control Structures Simple Program Design Third Edition A Step-by-Step Approach 5.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 5 Looping.
+ Starting Out with C++ Early Objects Seventh Edition by Tony Gaddis, Judy Walters, and Godfrey Muganda Chapter 5: Looping.
A loop is a repetition control structure. body - statements to be repeated control statement - decides whether another repetition needs to be made leading.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 8 Arrays.
Chapter 10: Using Menus and Validating Input Programming Logic and Design, Third Edition Comprehensive.
Loops and Files. 5.1 The Increment and Decrement Operators.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 5 Repetition Structures.
1 Standard Version of Starting Out with C++, 4th Brief Edition Chapter 5 Looping.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5: Looping.
CSC 1010 Programming for All Lecture 4 Loops Some material based on material from Marty Stepp, Instructor, University of Washington.
Copyright © 2012 Pearson Education, Inc. Chapter 5: Loops.
10 Chapter 101 Using Menus and Validating Input Programming Logic and Design, Second Edition, Comprehensive 10.
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 5 Looping.
Topic: Control Statements. Recap of Sequence Control Structure Write a program that accepts the basic salary and allowance amount for an employee and.
Chapter Looping 5. The Increment and Decrement Operators 5.1.
Chapter 7: The Repetition Structure Introduction to Programming with C++ Fourth Edition.
Copyright 2006 Addison-Wesley Brief Version of Starting Out with C++ Chapter 5 Looping.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and.
Chapter 6: Looping. Objectives Learn about the loop structure Create while loops Use shortcut arithmetic operators Create for loops Create do…while loops.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and.
While loops. Iteration We’ve seen many places where repetition is necessary in a problem. We’ve been using the for loop for that purpose For loops are.
Programming Logic and Design Fifth Edition, Comprehensive Chapter 6 Arrays.
Chapter Looping 5. The Increment and Decrement Operators 5.1.
Lecture 7 – Repetition (Loop) FTMK, UTeM – Sem /2014.
Chapter 4 Repetition Statements Program Development and Design Using C++, Third Edition.
Chapter 5: Looping. Using the while Loop Loop – A structure that allows repeated execution of a block of statements Loop body – A block of statements.
Topics Introduction to Repetition Structures
Programming Logic and Design Fourth Edition, Comprehensive
CHAPTER 5A Loop Structure
Chapter 5: Looping Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley.
Topics Introduction to Repetition Structures
Lecture 4B More Repetition Richard Gesick
Learning About the Loop Structure (continued)
While loops The while loop executes the statement over and over as long as the boolean expression is true. The expression is evaluated first, so the statement.
CIS 16 Application Development Programming with Visual Basic
Chapter 8: More on the Repetition Structure
Writing a Complete Program
Programming Logic and Design Fifth Edition, Comprehensive
Topics Introduction to Repetition Structures
Chapter 10: Using Menus and Validating Input
Based on slides created by Bjarne Stroustrup & Tony Gaddis
Based on slides created by Bjarne Stroustrup & Tony Gaddis
Presentation transcript:

Programming Logic and Design Sixth Edition Chapter 5 Looping

Objectives In this chapter, you will learn about: –The advantages of looping –Using a loop control variable –Nested loops –Avoiding common loop mistakes –Using a for loop –Common loop applications Programming Logic & Design, Sixth Edition2

Understanding the Advantages of Looping Looping makes computer programming efficient and worthwhile Write one set of instructions to operate on multiple, separate sets of data Loop: structure that repeats actions while some condition continues Programming Logic & Design, Sixth Edition3

Understanding the Advantages of Looping (continued) Programming Logic & Design, Sixth Edition4 Figure 5-1 The loop structure

Using a Loop Control Variable As long as a Boolean expression remains true, while loop’s body executes Control number of repetitions –Loop control variable initialized before entering loop –Loop control variable tested –Body of loop must alter value of loop control variable Repetitions controlled by: –Counter –Sentinel value Programming Logic & Design, Sixth Edition5

Using a Definite Loop with a Counter Definite loop –Executes predetermined number of times Counter-controlled loop –Program counts loop repetitions Loop control variables altered by: –Incrementing –Decrementing Programming Logic & Design, Sixth Edition6

Using a Definite Loop with a Counter (continued) Programming Logic & Design, Sixth Edition7 Figure 5-3 A counted while loop that outputs “Hello” four times

Using an Indefinite Loop with a Sentinel Value Indefinite loop –Performed a different number of times each time the program executes Three crucial steps –Starting value to control the loop must be provided –Comparison must be made using the value that controls the loop –Within the loop, value that controls the loop must be altered Programming Logic & Design, Sixth Edition8

9 Figure 5-4 An indefinite while loop that displays “Hello” as long as the user wants to continue

Understanding the Loop in a Program’s Mainline Logic Three steps that should occur in every properly functioning loop –Provide a starting value for the variable that will control the loop –Test the loop control variable to determine whether the loop body executes –Alter the loop control variable Programming Logic & Design, Sixth Edition10

Nested Loops Nested loops: loops within loops Outer loop: loop that contains the other loop Inner loop: loop that is contained Needed when values of two (or more) variables repeat to produce every combination of values Programming Logic & Design, Sixth Edition11

Programming Logic & Design, Sixth Edition12 Figure 5-8 Flowchart and pseudocode for AnswerSheet program

Avoiding Common Loop Mistakes Neglecting to initialize the loop control variable Neglecting to alter the loop control variable Using the wrong comparison with the loop control variable Including statements inside the loop that belong outside the loop Programming Logic & Design, Sixth Edition13

Avoiding Common Loop Mistakes (continued) Mistake: neglecting to initialize the loop control variable –Example: get name statement removed Value of name unknown or garbage Program may end before any labels printed 100 labels printed with an invalid name Programming Logic & Design, Sixth Edition14

Programming Logic & Design, Sixth Edition15 Figure 5-10 Incorrect logic for greeting program because the loop control variable initialization is missing

Avoiding Common Loop Mistakes (continued) Mistake: neglecting to alter the loop control variable –Remove get name instruction from outer loop User never enters a name after the first one Inner loop executes infinitely Always incorrect to create a loop that cannot terminate Programming Logic & Design, Sixth Edition16

Programming Logic & Design, Sixth Edition17 Figure 5-10 Incorrect logic for greeting program because the loop control variable is not altered

Avoiding Common Loop Mistakes (continued) Mistake: using the wrong comparison with the loop control variable –Programmers must use correct comparison –Seriousness depends on actions performed within a loop Overcharge insurance customer by one month Overbook a flight on airline application Dispense extra medication to patients in pharmacy Programming Logic & Design, Sixth Edition18

Programming Logic & Design, Sixth Edition19 Figure 5-12 Incorrect logic for greeting program because the wrong test is made with the loop control variable

Avoiding Common Loop Mistakes (continued) Mistake: including statements inside the loop that belong outside the loop –Example: discount every item by 30 percent –Inefficient because the same value is calculated 100 separate times for each price that is entered –Move outside loop for efficiency Programming Logic & Design, Sixth Edition20

Programming Logic & Design, Sixth Edition21 Figure 5-13 Inefficient way to produce 100 discount price stickers for differently priced items

Programming Logic & Design, Sixth Edition22 Figure 5-14 Improved discount sticker-making program

Using a for Loop for statement or for loop is a definite loop Provides three actions in one structure –Initializes –Evaluates –Increments Takes the form: for loopControlVariable = initialValue to finalValue step stepValue do something endfor Programming Logic & Design, Sixth Edition23

Using a for Loop (continued) Example for count = 0 to 3 step 1 output “Hello” endfor Initializes count to 0 Checks count against the limit value 3 If evaluation is true, for statement body prints the label Increases count by 1 Programming Logic & Design, Sixth Edition24

Using a for Loop (continued) while statement could be used in place of for statement Step value: number used to increase a loop control variable on each pass through a loop –Programming languages can: Require a statement that indicates the step value Have a step value default of 1 Specify step value when each pass through the loop changes the loop control variable by value other than 1 Programming Logic & Design, Sixth Edition25

Common Loop Applications Using a loop to accumulate totals –Examples Business reports often include totals List of real estate sold and total value Accumulator: variable that gathers values –Similar to a counter Counter increments by one Accumulator increments by some value Programming Logic & Design, Sixth Edition26

Common Loop Applications (continued) Accumulate total real estate prices –Declare numeric variable at beginning –Initialize the accumulator to 0 –Read each transaction’s data record –Add its value to accumulator variable –Read the next record until eof Variables exist only for the life of the application –Run the application a second time; variables occupy different memory location Programming Logic & Design, Sixth Edition27

Common Loop Applications (continued) Programming Logic & Design, Sixth Edition28 Figure 5-16 Month-end real estate sales report

Programming Logic & Design, Sixth Edition29 Figure 5-17 Flowchart and pseudocode for real estate sales report program

Common Loop Applications (continued) Using a loop to validate data –When prompting a user for data, no guarantee that data is valid Validate data: make sure data falls in acceptable ranges Example: user enters birth month –If number is less than 1 or greater than 12 Display error message and stop the program Assign default value for the month Reprompt the user for valid input Programming Logic & Design, Sixth Edition30

Programming Logic & Design, Sixth Edition31 Figure 5-18 Reprompting a user once after an invalid month is entered

Programming Logic & Design, Sixth Edition32 Figure 5-19 Reprompting a user continuously after an invalid month is entered

Common Loop Applications (continued) Limiting a reprompting loop –Reprompting can be frustrating to a user if it continues indefinitely –Maintain count of the number of reprompts –Forcing a data item means: Override incorrect data by setting the variable to a specific value Programming Logic & Design, Sixth Edition33

Common Loop Applications (continued) Validating a data type –Validating data requires a variety of methods –isNumeric() or similar method Provided with the language translator you use to write your programs Black box –isChar() or isWhitespace() –Accept user data as strings –Use built-in methods to convert to correct data types Programming Logic & Design, Sixth Edition34

Common Loop Applications (continued) Figure 5-21 Checking data for correct type Programming Logic & Design, Sixth Edition35

Common Loop Applications (continued) Validating reasonableness and consistency of data –Many data items can be checked for reasonableness –Good defensive programs try to foresee all possible inconsistencies and errors Programming Logic & Design, Sixth Edition36

Summary When using a loop, write one set of instructions that operates on multiple, separate data Three steps must occur in every loop –Initialize loop control variable –Compare variable to some value –Alter the variable that controls the loop Nested loops: loops within loops Nested loops maintain two individual loop control variables –Alter each at the appropriate time Programming Logic & Design, Sixth Edition37

Summary (continued) Common mistakes made by programmers –Neglecting to initialize loop control variable –Neglecting to alter loop control variable –Using wrong comparison with loop control variable –Including statements inside the loop that belong outside the loop Most computer languages support a for statement for loop used with definite loops –When number of iterations is known Programming Logic & Design, Sixth Edition38

Summary (continued) for loop automatically: –Initializes –Evaluates –Increments Accumulator: variable that gathers values Loops used to ensure user data is valid by reprompting the user Programming Logic & Design, Sixth Edition39