1 / 49

Introduction to Flowcharting

Introduction to Flowcharting. A Supplement to Starting Out with C++ Brief Second Edition by Tony Gaddis Scott/Jones Publishers. START. END. Display message “How many hours did you work?”. Display message “How much do you get paid per hour?”. Read Hours. Read Pay Rate.

dorian-yang
Download Presentation

Introduction to Flowcharting

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Flowcharting A Supplement toStarting Out with C++ Brief Second Editionby Tony GaddisScott/Jones Publishers (C)opyright 2000 Scott/Jones Publishers

  2. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay What is a Flowchart? • A flowchart is a diagram that depicts the “flow” of a program. • The figure shown here is a flowchart for the pay-calculating program on page 12. (C)opyright 2000 Scott/Jones Publishers

  3. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Rounded Rectangle Basic Flowchart Symbols • Notice there are three types of symbols in this flowchart: • rounded rectangles • parallelograms • a rectangle • Each symbol represents a different type of operation. Parallelogram Multiply Hours by Pay Rate. Store result in Gross Pay. Rectangle Rounded Rectangle (C)opyright 2000 Scott/Jones Publishers

  4. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate START END Display Gross Pay Terminal Basic Flowchart Symbols • Terminals • represented by rounded rectangles • indicate a starting or ending point Multiply Hours by Pay Rate. Store result in Gross Pay. Terminal (C)opyright 2000 Scott/Jones Publishers

  5. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display message “How many hours did you work?” Read Hours Display Gross Pay Basic Flowchart Symbols • Input/Output Operations • represented by parallelograms • indicate an input or output operation Input/Output Operation Multiply Hours by Pay Rate. Store result in Gross Pay. (C)opyright 2000 Scott/Jones Publishers

  6. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Basic Flowchart Symbols • Processes • represented by rectangles • indicates a process such as a mathematical computation or variable assignment Multiply Hours by Pay Rate. Store result in Gross Pay. Process Multiply Hours by Pay Rate. Store result in Gross Pay. (C)opyright 2000 Scott/Jones Publishers

  7. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Stepping Through the Flowchart Stepping Through the Flowchart Output Operation How many hours did you work? Multiply Hours by Pay Rate. Store result in Gross Pay. Variable Contents: Hours: ? Pay Rate: ? Gross Pay: ? (C)opyright 2000 Scott/Jones Publishers

  8. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Stepping Through the Flowchart Stepping Through the Flowchart Input Operation (User types 40) How many hours did you work? 40 Multiply Hours by Pay Rate. Store result in Gross Pay. Variable Contents: Hours: 40 Pay Rate: ? Gross Pay: ? (C)opyright 2000 Scott/Jones Publishers

  9. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Stepping Through the Flowchart Stepping Through the Flowchart How much do you get paid per hour? Output Operation Multiply Hours by Pay Rate. Store result in Gross Pay. Variable Contents: Hours: 40 Pay Rate: ? Gross Pay: ? (C)opyright 2000 Scott/Jones Publishers

  10. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Stepping Through the Flowchart Stepping Through the Flowchart How much do you get paid per hour? 20 Input Operation (User types 20) Multiply Hours by Pay Rate. Store result in Gross Pay. Variable Contents: Hours: 40 Pay Rate: 20 Gross Pay: ? (C)opyright 2000 Scott/Jones Publishers

  11. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Stepping Through the Flowchart How much do you get paid per hour? Multiply Hours by Pay Rate. Store result in Gross Pay. Process: The product of 40 times 20 is stored in Gross Pay Variable Contents: Hours: 40 Pay Rate: 20 Gross Pay: 800 (C)opyright 2000 Scott/Jones Publishers

  12. START END Display message “How many hours did you work?” Display message “How much do you get paid per hour?” Read Hours Read Pay Rate Display Gross Pay Stepping Through the Flowchart Your gross pay is 800 Multiply Hours by Pay Rate. Store result in Gross Pay. Variable Contents: Hours: 40 Pay Rate: 20 Gross Pay: 800 Output Operation (C)opyright 2000 Scott/Jones Publishers

  13. Four Flowchart Structures • Sequence • Decision • Repetition • Case (C)opyright 2000 Scott/Jones Publishers

  14. Sequence Structure • a series of actions are performed in sequence • The pay-calculating example was a sequence flowchart. (C)opyright 2000 Scott/Jones Publishers

  15. Decision Structure • One of two possible actions is taken, depending on a condition. (C)opyright 2000 Scott/Jones Publishers

  16. NO YES Decision Structure • A new symbol, the diamond, indicates a yes/no question. If the answer to the question is yes, the flow follows one path. If the answer is no, the flow follows another path (C)opyright 2000 Scott/Jones Publishers

  17. NO YES x < y? Process A Process B Decision Structure • In the flowchart segment below, the question “is x < y?” is asked. If the answer is no, then process A is performed. If the answer is yes, then process B is performed. (C)opyright 2000 Scott/Jones Publishers

  18. NO YES x < y? Calculate a as x times 2. Calculate a as x plus y. Decision Structure • The flowchart segment below shows how a decision structure is expressed in C++ as an if/else statement. Flowchart C++ Code if (x < y) a = x * 2; else a = x + y; (C)opyright 2000 Scott/Jones Publishers

  19. NO YES x < y? Calculate a as x times 2. Decision Structure • The flowchart segment below shows a decision structure with only one action to perform. It is expressed as an if statement in C++ code. Flowchart C++ Code if (x < y) a = x * 2; (C)opyright 2000 Scott/Jones Publishers

  20. Repetition Structure • A repetition structure represents part of the program that repeats. This type of structure is commonly known as a loop. (C)opyright 2000 Scott/Jones Publishers

  21. Repetition Structure • Notice the use of the diamond symbol. A loop tests a condition, and if the condition exists, it performs an action. Then it tests the condition again. If the condition still exists, the action is repeated. This continues until the condition no longer exists. (C)opyright 2000 Scott/Jones Publishers

  22. YES x < y? Process A Repetition Structure • In the flowchart segment, the question “is x < y?” is asked. If the answer is yes, then Process A is performed. The question “is x < y?” is asked again. Process A is repeated as long as x is less than y. When x is no longer less than y, the repetition stops and the structure is exited. (C)opyright 2000 Scott/Jones Publishers

  23. YES x < y? Add 1 to x Repetition Structure • The flowchart segment below shows a repetition structure expressed in C++ as a while loop. Flowchart C++ Code while (x < y) x++; (C)opyright 2000 Scott/Jones Publishers

  24. YES x < y? Display x Controlling a Repetition Structure • The action performed by a repetition structure must eventually cause the loop to terminate. Otherwise, an infinite loop is created. • In this flowchart segment, x is never changed. Once the loop starts, it will never end. • QUESTION: How can thisflowchart be modified soit is no longer an infiniteloop? (C)opyright 2000 Scott/Jones Publishers

  25. YES x < y? Display x Add 1 to x Controlling a Repetition Structure • ANSWER: By adding an action within the repetition that changes the value of x. (C)opyright 2000 Scott/Jones Publishers

  26. YES x < y? Display x Add 1 to x A Pre-Test Repetition Structure • This type of structure is known as a pre-test repetition structure. The condition is tested BEFORE any actions are performed. (C)opyright 2000 Scott/Jones Publishers

  27. YES x < y? Display x Add 1 to x A Pre-Test Repetition Structure • In a pre-test repetition structure, if the condition does not exist, the loop will never begin. (C)opyright 2000 Scott/Jones Publishers

  28. x < y? Display x Add 1 to x YES A Post-Test Repetition Structure • This flowchart segment shows a post-testrepetition structure. • The condition is tested AFTER the actionsare performed. • A post-test repetition structure alwaysperforms its actions at least once. (C)opyright 2000 Scott/Jones Publishers

  29. x < y? Display x Add 1 to x YES A Post-Test Repetition Structure • The flowchart segment below shows a post-test repetition structure expressed in C++ as a do-while loop. C++ Code do{ cout << x << endl; x++;} while (x < y); Flowchart (C)opyright 2000 Scott/Jones Publishers

  30. Case Structure • One of several possible actions is taken, depending on the contents of a variable. (C)opyright 2000 Scott/Jones Publishers

  31. CASEyears_employed 1 3 Other 2 bonus = 100 bonus = 400 bonus = 800 bonus = 200 Case Structure • The structure below indicates actions to perform depending on the value in years_employed. (C)opyright 2000 Scott/Jones Publishers

  32. CASEyears_employed 1 3 Other 2 bonus = 100 bonus = 400 bonus = 800 bonus = 200 Case Structure If years_employed = 2, bonus is set to 200 If years_employed = 3, bonus is set to 400 If years_employed is any other value, bonus is set to 800 If years_employed = 1, bonus is set to 100 (C)opyright 2000 Scott/Jones Publishers

  33. A Connectors • Sometimes a flowchart will not fit on one page. • A connector (represented by a small circle) allows you to connect two flowchart segments. (C)opyright 2000 Scott/Jones Publishers

  34. START END A A Connectors • The “A” connector indicates that the second flowchart segment begins where the first segment ends. (C)opyright 2000 Scott/Jones Publishers

  35. YES x < y? Display x Add 1 to x Combining Structures • Structures are commonly combined to create more complex algorithms. • The flowchart segment below combines a decision structure with a sequence structure. (C)opyright 2000 Scott/Jones Publishers

  36. NO YES x > min? NO YES Display “x is outside the limits.” x < max? Display “x is outside the limits.” Display “x is within limits.” Combining Structures • This flowchart segment shows two decision structures combined. (C)opyright 2000 Scott/Jones Publishers

  37. Review • What do each of the following symbols represent? (Answer on next slide) (C)opyright 2000 Scott/Jones Publishers

  38. Answer • What do each of the following symbols represent? Terminal Decision Input/Output Operation Connector Process (C)opyright 2000 Scott/Jones Publishers

  39. Review • Name the four flowchart structures. (Answer on next slide) (C)opyright 2000 Scott/Jones Publishers

  40. Answer • Sequence • Decision • Repetition • Case (C)opyright 2000 Scott/Jones Publishers

  41. Review • What type of structure is this? (Answer on next slide) (C)opyright 2000 Scott/Jones Publishers

  42. Answer • Repetition (C)opyright 2000 Scott/Jones Publishers

  43. Review • What type of structure is this? (Answer on next slide) (C)opyright 2000 Scott/Jones Publishers

  44. Answer • Sequence (C)opyright 2000 Scott/Jones Publishers

  45. Review • What type of structure is this? (Answer on next slide) (C)opyright 2000 Scott/Jones Publishers

  46. Answer • Case (C)opyright 2000 Scott/Jones Publishers

  47. Review • What type of structure is this? (Answer on next slide) (C)opyright 2000 Scott/Jones Publishers

  48. Answer • Decision (C)opyright 2000 Scott/Jones Publishers

  49. More Example Flowcharts • View the following MS-Word files to see more example flowcharts for programs in the book: • Flowchart - Chapter 1.doc • Flowchart - Chapter 2.doc • Flowchart - Chapter 3.doc • Flowchart - Chapter 4.doc • Flowchart - Chapter 5.doc • Flowchart - Chapter 6.doc (C)opyright 2000 Scott/Jones Publishers

More Related