1 / 46

Understanding the Three Basic Structures

Understanding the Three Basic Structures. Structure : a basic unit of programming logic Any program can be constructed from only three basic types of structures Sequence Selection Loop. Control Structures. Sequence –in sequential order.

lbarlow
Télécharger la présentation

Understanding the Three Basic Structures

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. Understanding the Three Basic Structures • Structure: a basic unit of programming logic • Any program can be constructed from only three basic types of structures • Sequence • Selection • Loop Programming Logic and Design, Introductory, Fourth Edition

  2. Control Structures • Sequence–in sequential order. • The simplest of control structures – start at the beginning and continue in sequential order. • Repetition– repeat statements more than once • Also called a loop, it needs a stop condition, i.e, the program will continue to loop until some condition is met. • Selection – selectively execute statements • Called a branch, it requires a condition to determine when to execute statements. Programming Logic and Design, Introductory, Fourth Edition

  3. Instruction Instruction Instruction Instruction Instruction Instruction Instruction Instruction Instruction Instruction Instruction Instruction 1. Sequence ? 2. Selection Structure Theorem 3. Repetition Sequential instructions Do While / Do Until IF … THEN … ELSECASE Programming Logic and Design, Introductory, Fourth Edition

  4. Understanding the Three Basic Structures (continued) • Sequence structure • A set of instructions, performed sequentially with no branching Programming Logic and Design, Introductory, Fourth Edition

  5. Understanding the Three Basic Structures (continued) • Selection structure • Asks a question, then takes one of two possible courses of action based on the answer • Also called a decision structure or an if-then-else Programming Logic and Design, Introductory, Fourth Edition

  6. Flowchart for a Sequence START Instructions follow each other sequentially Input sales amount from customer Sale Sequential instructions Computer total amount Sales amount x .06 Print report Sale report Hard Drive Printed Report Sale data Save in file END Programming Logic and Design, Introductory, Fourth Edition

  7. Flowchart for a Decision Decision or selection structure flowchart: IF --- THEN --- ELSE CASE statement Question Answer is “NO” (false) Answer is “YES” (true) Programming Logic and Design, Introductory, Fourth Edition

  8. Understanding the Three Basic Structures (continued) • Dual-alternative if: contains two alternatives If the hours an employee has worked is greater than 40 hours then calculate their pay as regular hours multiplied by their regular time pay mount added to the overtime pay amount which is overtime hours multiplied by 1 ½ time the regular pay amount. The Problem IF the hours worked is more than 40 THEN (question) total pay will be = regular pay amount plus overtime hours multiplied by 1 ½ times regular pay amount (action if true)ELSE total pay is regular hours times regular pay amount (action if false)END IF Pauedocode Flowchart Programming Logic and Design, Introductory, Fourth Edition

  9. Understanding the Three Basic Structures (continued) If the hours an employee has worked is greater than 40 hours then calculate their pay as regular hours multiplied by their regular time pay mount added to the overtime pay amount which is overtime hours multiplied by 1 ½ time the regular pay amount. • Single-alternative if: contains one alternative The Problem Total pay = regular hours multiplied by regular payIF the hours worked is more than 40 THEN (question) total pay will be = total pay amount plus overtime hours multiplied by 1 ½ times regular pay amount (action if true)END IFPrint to printer the total pay amount (action if true or false) Pauedocode FALSE path TRUE path Question Flowchart Programming Logic and Design, Introductory, Fourth Edition TRUE or FALSE path

  10. Understanding the Three Basic Structures (continued) • Single-alternative if • Else clause is not required • Null case: situation where nothing is done If End If Programming Logic and Design, Introductory, Fourth Edition

  11. Flowchart for a Decision ASK THE QUESTION IF condition THEN instruction1 instruction2 as many instructions as needed as many structures (decision, sequential, looping) as neededELSE instruction1 instruction2 as many instructions as needed as many structures (decision, sequential, looping) as neededENDIFContinuation of the program (instructions and structures) TRUE path if the questions answer is true (YES) IF condition THEN as many instructions as needed as many structures (decision, sequential, looping) as needed ENDIF TRUE path if the questions answer is true (YES) FALSE path if the questions answer is false (NO) Programming Logic and Design, Introductory, Fourth Edition

  12. Flowchart for a Decision CONDITIONS A < B (A & B are the same data type (numeric or alphanumeric) X + 5 >= Z (X and Z are numeric data types) E < 5 (E is a numeric data type) F > 10 (F is a numeric data type) IFA < BTHEN instructions/structuresELSEIFX + 5 >= ZTHEN instructions/structuresENDIFENDIF Nesting Programming Logic and Design, Introductory, Fourth Edition

  13. start Data is put into HOURS and RATE IFHOURS > 40 PAY= RATE * (40 + 1.5 * (HOURS – 40)) PAY = RATE * HOURS end Flowchart for a Decision Example 1 Somewhere before this decision, data is placed in the variables HOURS and RATEIF HOURS > 40 THEN PAY = RATE * (40 + 1.5 * (HOURS – 40))ELSE PAY = RATE * HOURSENDIF Programming Logic and Design, Introductory, Fourth Edition

  14. Nested Decisions (IF – THEN – ELSE) Example 2 ENDIF ENDIF Programming Logic and Design, Introductory, Fourth Edition

  15. Example 3 ENDIF Range Check ENDIF ENDIF Programming Logic and Design, Introductory, Fourth Edition

  16. Example 4 ENDIF ENDIF ENDIF Programming Logic and Design, Introductory, Fourth Edition

  17. Understanding the Three Basic Structures (continued) • Loop structure • Repeats a set of actions based on the answer to a question • Also called repetition or iteration • Question is asked first in the most common form of loop Programming Logic and Design, Introductory, Fourth Edition

  18. Understanding the Three Basic Structures (continued) • Loop structure WHILE testcondition (check if testcondition is true) do however many instructions are required (testcondition is true)END LOOP (end of loop – go back to beginning and check condition)Continue with whatever processing is necessary DO WHILE or DO UNTIL Check Condition here or here Question TRUE (repeat) FALSE Programming Logic and Design, Introductory, Fourth Edition

  19. Flowchart for a Loop Loop or repetition structure flowchart: Ask a questionAnswer is “Yes” Execute the loop Answer is “NO” Exit the loop Question Programming Logic and Design, Introductory, Fourth Edition

  20. Understanding the Three Basic Structures (continued) • All logic problems can be solved using only these three structures • Structures can be combined in an infinite number of ways • Stacking: attaching structures end-to-end • End-structure statements • Indicate the end of a structure • endif: ends an if-then-else structure • endwhile: ends a loop structure Programming Logic and Design, Introductory, Fourth Edition

  21. Understanding the Three Basic Structures (continued) Programming Logic and Design, Introductory, Fourth Edition

  22. Understanding the Three Basic Structures (continued) • Any individual task or step in a structure can be replaced by a structure • Nesting: placing one structure within another • Indent the nested structure’s statements • Block: group of statements that execute as a single unit Programming Logic and Design, Introductory, Fourth Edition

  23. Understanding the Three Basic Structures (continued) Programming Logic and Design, Introductory, Fourth Edition

  24. Understanding the Three Basic Structures (continued) Programming Logic and Design, Introductory, Fourth Edition

  25. Understanding the Three Basic Structures (continued) Programming Logic and Design, Introductory, Fourth Edition

  26. Understanding the Three Basic Structures (continued) • Each structure has one entry and one exit point • Structures attach to others only at entry or exit points Programming Logic and Design, Introductory, Fourth Edition

  27. Using the Priming Read • Priming read (or priming input): • Reads the first input data record • 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, Introductory, Fourth Edition

  28. Using the Priming Read (continued) • Unstructured loop: Programming Logic and Design, Introductory, Fourth Edition

  29. Using the Priming Read (continued) • Structured but nonfunctional loop Programming Logic and Design, Introductory, Fourth Edition

  30. Using the Priming Read (continued) • Corrrect Programming Logic and Design, Introductory, Fourth Edition

  31. Using the Priming Read (continued) • Functional and structured loop Programming Logic and Design, Introductory, Fourth Edition

  32. Using the Priming Read (continued) • Priming read sets up the process so the loop can be structured • To analyze a flowchart’s structure, try writing pseudocode for it Programming Logic and Design, Introductory, Fourth Edition

  33. Using the Priming Read (continued) • What is wrong with this design? Programming Logic and Design, Introductory, Fourth Edition

  34. Understanding the Reasons for Structure • Advantages of structure: • Provides clarity • Professionalism • Efficiency • Ease of maintenance • Supports modularity Programming Logic and Design, Introductory, Fourth Edition

  35. Understanding the Reasons for Structure (continued) Programming Logic and Design, Introductory, Fourth Edition

  36. Recognizing Structure (continued) • Next, pull up the flowline on the right side of B Programming Logic and Design, Introductory, Fourth Edition

  37. Recognizing Structure (continued) • Now pull up the flowline on the right side of D Programming Logic and Design, Introductory, Fourth Edition

  38. Recognizing Structure (continued) • Bring together the loose ends of D and of B Programming Logic and Design, Introductory, Fourth Edition

  39. Three Special Structures – Case, DoWhile, and DoUntil • Many languages allow three additional structures: • case structure • do-while structure • do-until structure • Case Structure: • Decisions with more than two alternatives • Tests a variable against a series of values and takes action based on a match • Nested if-then-else statements will do what a case structure does Programming Logic and Design, Introductory, Fourth Edition

  40. Three Special Structures – Case, DoWhile, and DoUntil (continued) • Using nested if-then-else for multiple alternatives Programming Logic and Design, Introductory, Fourth Edition

  41. Three Special Structures – Case, DoWhile, and DoUntil (continued) • Using a case structure for multiple alternatives Programming Logic and Design, Introductory, Fourth Edition

  42. Three Special Structures – Case, DoWhile, and DoUntil (continued) • do-while and do-until loops • Question is asked at the end of the loop structure • Ensures that the loop statements are always used at least once Programming Logic and Design, Introductory, Fourth Edition

  43. Three Special Structures – Case, DoWhile, and DoUntil (continued) • do-while loop executes as long as the question’s answer is Yes or True Test checked at beginning May not be executed • do-until loop executes as long as the question’s answer is No or False (until it becomes Yes or True)Test checked at end of loop Will always execute loop at least once Programming Logic and Design, Introductory, Fourth Edition

  44. Three Special Structures – Case, DoWhile, and DoUntil (continued) • while loop with question at beginning is called a pretest loop • do-until with question at end are called posttest loops Programming Logic and Design, Introductory, Fourth Edition

  45. Three Special Structures – Case, DoWhile, and DoUntil (continued) Programming Logic and Design, Introductory, Fourth Edition

  46. Three Special Structures – Case, DoWhile, and DoUntil (continued) Programming Logic and Design, Introductory, Fourth Edition

More Related