While loops and for loops: Correct Solution


Part 1

Consider the following code:

A
while (B) {
    C
    if (D) {
        E
        F
        break;
    }
    G
}
H
I
  1. Assume the loop ends because the test condition of the loop is false on iteration 1. Write out the the order in which the statements will execute.

  2. Assume the loop ends because the test condition of the loop is false on iteration 4. Write out the the order in which the statements will execute.

Solution

  1. Order:

    A B C G H I
  2. Order:

    A B C D E F G B C D E F G B C D E F G B C G H I

Part 2

Translate the following natural language description of a loop into a for loop:

Declare a variable named josm of type int, initialized to pri. Then, until josm is greater than or equal to stiu, multiply josm by 4.

Solution

for (int josm = pri; josm > stiu; josm *= 4) {
    ...
}

Something to double-check in your solution:


Related puzzles: