1 / 56

Chapter 4 Introduction to Control Statements

Chapter 4 Introduction to Control Statements. Fundamentals of Java. Objectives. Use the increment and decrement operators. Use standard math methods. Use if and if-else statements to make choices. Objectives (cont.). Use while and for loops to repeat a process.

tiva
Download Presentation

Chapter 4 Introduction to Control Statements

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. Chapter 4Introduction to Control Statements Fundamentals of Java

  2. Objectives • Use the increment and decrement operators. • Use standard math methods. • Use if and if-else statements to make choices. Fundamentals of Java

  3. Objectives (cont.) • Use while and for loops to repeat a process. • Construct appropriate conditions for control statements using relational operators. • Detect and correct common loop errors. Fundamentals of Java

  4. Vocabulary • Control statements • Counter • Count-controlled loop • Entry-controlled loop • Flowchart • Infinite loop Fundamentals of Java

  5. Vocabulary (cont.) • Iteration • Off-by-one error • Overloading • Sentinel • Task-controlled loop Fundamentals of Java

  6. Additional Operators • Extended assignment operators • Assignment operator combined with arithmetic and concatenation operators Fundamentals of Java

  7. Additional Operators (cont.) • Increment operator: ++ • Increase value of operand by 1 • Decrement operator: -- • Decrease value of operand by 1 Fundamentals of Java

  8. Standard Classes and Methods: The Math Class Table 4-1: Seven methods in the Math class Fundamentals of Java

  9. Standard Classes and Methods: The Math Class (cont.) • The two abs() methods are overloaded. • Overloaded: Multiple methods in the same class with the same name • Using sqrt() method example: Fundamentals of Java

  10. Standard Classes and Methods: The Math Class (cont.) • Math class methods example: Fundamentals of Java

  11. Standard Classes and Methods: The Random Class • Random number generator:Returns numbers chosen at random from a pre-designated interval Table 4-2: Methods in the Random class Fundamentals of Java

  12. A Visit to the Farm Fundamentals of Java

  13. The if and if-else Statements • Principal forms: Fundamentals of Java

  14. The if and if-else Statements (cont.) • Additional forms: Fundamentals of Java

  15. The if and if-else Statements (cont.) • Better to over-use braces than under-use them • Can help to eliminate logic errors • Condition of an if statement must be a Boolean expression • Evaluates to true or false • A flowchart can be used to illustrate the behavior of if-else statements. Fundamentals of Java

  16. The if and if-else Statements (cont.) Figure 4-1: Flowcharts for the if and if-else statements Fundamentals of Java

  17. The if and if-else Statements (cont.) • Examples of if statements: Fundamentals of Java

  18. The if and if-else Statements (cont.) Table 4-3: Relational operators Fundamentals of Java

  19. The if and if-else Statements (cont.): Checking Input for Validity Example 4.1: Computes the area of a circle if the radius >= 0 or otherwise displays an error message Fundamentals of Java

  20. The while Statement • Provides a looping mechanism • Executes statements repeatedly for as long as some condition remains true Fundamentals of Java

  21. The while Statement (cont.) Figure 4-2: Flowchart for a while statement Fundamentals of Java

  22. The while Statement (cont.) • Example: • Counter-controlled loop: • cntr is the counter • Loop repeats a determined number of times Fundamentals of Java

  23. The while Statement (cont.) • Tracing: Track value of variables through each iteration of the loop Table 4-4: Trace of how variables change on each iteration through a loop Fundamentals of Java

  24. The while Statement (cont.) • Counting backward: Fundamentals of Java

  25. The while Statement (cont.) • Task-controlled loop: Continues to execute until some task is accomplished Fundamentals of Java

  26. The while Statement (cont.) • Common structure of a while loop: Fundamentals of Java

  27. The while Statement (cont.) Example 4.2: Compute and display the factorial of n Fundamentals of Java

  28. The for statement • Combines counter initialization, condition test, and update into a single expression • Easy to create count-controlled loops Fundamentals of Java

  29. The for statement (cont.) • Example: Fundamentals of Java

  30. The for statement (cont.) • Count-controlled input: Fundamentals of Java

  31. The for statement (cont.) • Better to declare the loop control variable within the loop header • Only visible within the loop • Variable name can be reused later in other loops Fundamentals of Java

  32. The for statement (cont.) • Both for loops and while loops are entry-controlled loops. • Condition tested at top of loop on each pass • Choosing a for loop versus a while loop is often a matter of style. • for loop advantages: • Can declare loop control variable in header • Initialization, condition, and update in one line of code Fundamentals of Java

  33. Nested Control Statements and the break Statement • Control statements may be nested. Fundamentals of Java

  34. Nested Control Statements and the break Statement (cont.) • break statement: Prematurely end a loop Fundamentals of Java

  35. Nested Control Statements and the break Statement (cont.) • Sentinel-controlled input: Continue a loop until a sentinel variable has a specific value Fundamentals of Java

  36. Using Loops with Text Files • Advantages of using text files versus input from a human user: • Data sets can be much larger. • Data input quickly, with less chance of error. • Data can be used repeatedly. • Data files can be created by hand in a text editor or generated by a program. Fundamentals of Java

  37. Using Loops with Text Files (cont.) • Text file format: • If data is numerical, numbers must be separated by white space. • Must be an end-of-file character • Used by program to determine whether it is done reading data • When an error occurs at run-time, the JVM throws an exception. • IOException thrown if error occurs during file operations Fundamentals of Java

  38. Using Loops with Text Files (cont.) Example 4.3: Computes and displays the average of a file of floating-point numbers Fundamentals of Java

  39. Using Loops with Text Files (cont.) Example 4.4: Inputs a text file of integers and writes these to an output file without the zeroes Fundamentals of Java

  40. Errors in Loops • May occur in initializing statements, terminating conditions, body statements, or update statements • Initialization error: Failure to initialize or initializes to incorrect value • Off-by-one error: Loop iterates one too many or one too few times Fundamentals of Java

  41. Errors in Loops (cont.) • Infinite loop: Error in the terminating condition • Loop never terminates • Errors in loop body affect whether the loop completes its task correctly or at all. • Update error: Update statements in wrong place may affect calculations • Failing to update at all results in an infinite loop. Fundamentals of Java

  42. Errors in Loops (cont.) • Effects of limited floating-point precision: When using floating-point variables as loop control variables, you must understand that not all values can be represented. • Better not to use == or != in condition statement under these conditions Fundamentals of Java

  43. Errors in Loops (cont.) • Debugging loops: • If an error is suspected, make sure that: • Variables are initialized before entering the loop • The terminating condition stops the iterations when the test variables have reached the intended limit • The statements in the body are correct Fundamentals of Java

  44. Errors in Loops (cont.) • Debugging loops (cont.): • If an error is suspected, make sure that: • The update statements are positioned correctly and modify the test variables so that they eventually pass the limits tested in the terminating condition Fundamentals of Java

  45. Graphics and GUIs: I/O Dialog Boxes and Loops • A convenient way to accept input from a user is to pop up an input dialog box. • Use JOptionPane.showInputDialog(). Figure 4-4: Input dialog box Fundamentals of Java

  46. Graphics and GUIs: I/O Dialog Boxes and Loops (cont.) • If expected input is a number, must use Integer.parseInt() or Double.parseDouble() • To output a message, use a message dialog box. • JOptionPane.showMessageDialog( anObserver, aString) Fundamentals of Java

  47. Graphics and GUIs: I/O Dialog Boxes and Loops (cont.) Example 4.5: CircleArea with dialog I/O Fundamentals of Java

  48. Graphics and GUIs: I/O Dialog Boxes and Loops (cont.) Figure 4.5: Dialog I/O user interface for the circle area program Fundamentals of Java

  49. Graphics and GUIs: I/O Dialog Boxes and Loops (cont.) • Setting up multiple panels: • Can use a loop to initialize and install panels • Setting the preferred size of a panel: • Use JPanel class’s setPreferredSize() method. • JFrame class’s pack() method will cause the window to adjust its size to exactly fit the preferred size of any contained panels. Fundamentals of Java

  50. Graphics and GUIs: I/O Dialog Boxes and Loops (cont.) Example 4-7: Color panel whose background is a color provided by the client. A client-specified preferred size is optional. Fundamentals of Java

More Related