Presentation is loading. Please wait.

Presentation is loading. Please wait.

Loops Chapter 4. It repeats a set of statements while a condition is true. while (condition) { execute these statements; } “while” structures.

Similar presentations


Presentation on theme: "Loops Chapter 4. It repeats a set of statements while a condition is true. while (condition) { execute these statements; } “while” structures."— Presentation transcript:

1 Loops Chapter 4

2 It repeats a set of statements while a condition is true. while (condition) { execute these statements; } “while” structures

3 It repeats a set of statements while a condition is true. while ( condition ) { execute these statements; } 2 2 1 1 3 3 The dynamics of “while” Evaluate condition: if TRUE go to 2 If FALSE go to 3 Execute statements, and then go to 1 Continue with next statement. The dynamics of “while” Evaluate condition: if TRUE go to 2 If FALSE go to 3 Execute statements, and then go to 1 Continue with next statement. 1. 2. 3.

4 “while” structures It repeats a set of statements while a condition is true. int speedLimit = 55; int speed = 0; while ( speed <= speedLimit ) { speed = speed + 1; } // since we don’t want a ticket… speed = speed - 1; What is the value of “speed” after the last statement? A.55 B.54 C.56 D.0 E.none of the above

5 “while” structures It repeats a set of statements while a condition is true. int speedLimit = 55; int speed = 0; while ( speed < speedLimit ) { speed = speed + 1; } // since we don’t want a ticket… speed = speed - 1; initialize variables in conditional initialize variables in conditional 1 modify variables in conditional modify variables in conditional 2

6 “while” structures: Exercises Determine the output of the following methods: public void foo1() { int i=0; while (i <= 20) { System.out.println( i ); i = i + 4; // or i+= 4; } public void foo2() { int i = 20; while (i > 0) { i = i / 2; System.out.println( i ); } A.0 4 8 12 16 20 B.4 8 12 16 C.0 4 8 12 16 20 24 D.0 4 8 12 16 E.none of the above (on separate lines) A.20 10 5 2.5 1.25 B.10 5 2 1 0 C.20 5 2 1 D.20 5 2 1 0 E.none of the above (on separate lines)

7 Computer Work 1.Write a program that reads an integer, and displays (using System.out.println ) all numbers from the number down to 0. For example, if 8 is entered, the program should display numbers 7, 6, 5, 4, 3, 2, 1, 0, in this order and with each number in one line. 2.Write a program that reads an integer, and displays (using System.out.println ) all even numbers between 0 and the number received, and finally the number of numbers displayed. For example, if the parameter was 8, the method should display numbers 2, 4 and 6, in this order and with each number in one line, and return a value of 3 (which is how many even numbers were between 0 and 8).

8 “for” structures It (also) repeats statements while a condition is true. Works best when loop will be repeated a known number of times initial statement loop condition modify statement 2 2 1 1 4 4 3 3 5 5 The dynamics of “for” 1. Initialize condition variables. 2. Evaluate loop condition: if TRUE go to 3 If FALSE go to 5 3. Execute statements; then go to 4 4. Modify condition variables; then go to 2 5. Continue with next statements. The dynamics of “for” 1. Initialize condition variables. 2. Evaluate loop condition: if TRUE go to 3 If FALSE go to 5 3. Execute statements; then go to 4 4. Modify condition variables; then go to 2 5. Continue with next statements. for ( ; ; ) { statements; }

9 prime using for Write a program that prints “yes” or “no” to indicate whether an integer parameter named number is a prime number. Use a for loop. How to write Java: Answer the questions: Exactly how do you do this? What is a step by step description? WRITE IN ENGLISH. NOT Java or Draw pictures. or both Debug the English: Trace through with numbers. especially with going through the loop 0 times, 1 time, >= 1 times. Fix the ENGLISH.

10 1.Brainstorm. How do you figure out if a number is prime? prime(11) prime(12). Talk to each other. 2.Write an algorithm for that 3.Translate the algorithm to Java

11 Prime Number Program import java.util.Scanner; public class Prime { public static void main(String[ ] args) { Scanner kbd = new Scanner(System.in); System.out.print("Enter a number: "); int nbr = kbd.nextInt( ); if (nbr < 2) // only look at positive numbers { System.out.println("no"); System.exit(0); // means leave the program right now } for (int i=2;i<nbr;i++) { if (nbr % i == 0) { System.out.println("no"); System.exit(0); } System.out.println("yes"); } for loop Leaves loop and program outside the loop

12 Embedded loops Write a program to draw a square box after reading in its size 1.Write the first line (for loop printing n stars) 2.println 3.for each internal line (n-2 of them) a.print a * b.print n-2 spaces c.println a * 4.print the last line

13 import java.util.Scanner; public class DrawStars { public static void main(String[ ] args) { Scanner kbd = new Scanner(System.in); System.out.print("Enter a number: "); int nbr = kbd.nextInt( ); if (nbr < 2) // only look at positive numbers System.exit(0); // means leave the program right now // do first line for (int i=0;i<nbr;i++) System.out.print("*"); // add enter System.out.println( ); // nothing in parentheses // continued on next page

14 // print n-2 internal lines for (int i=0;i<nbr-2;i++) // i is never used. it only counts { // nbr of times through loop // print first character on line System.out.print("*"); // print number of spaces minus one * on each end for (int j=0;j<nbr-2;j++) // embedded loop for one internal line System.out.print(" "); // single space in between quotes // print last * on line -- also put enter in there System.out.println("*"); } // and outer for loop that does all internal lines // print last line. same as first line for (int i=0;i<nbr;i++) System.out.print("*"); System.out.println( ); // nothing in parentheses } // end main } // end class

15 Write a loop that prints a times table 0-2: 0 0 1 2 0 0 0 0 1 0 1 2 2 0 2 4 2a Embedded Loop Practice 1.Write the first line 2.for each number on the left (0, 1, 2) a.print the left number (the LHS of the table) b.for each number on the right (0, 1, 2) i.print the product c.println.


Download ppt "Loops Chapter 4. It repeats a set of statements while a condition is true. while (condition) { execute these statements; } “while” structures."

Similar presentations


Ads by Google