Learning_Java - 7 months ago 63

Java Question

What will be the largest value printed by the following code?

`for (int x=5; x > 0; x--) // I think that the loop counts down from 5 to 1 (subtracting 1 each time)`

for (int y=0; y < 8; y++) // I think the loop counts up from 0 to 7 (adding 1 each time)

System.out.println(x*y);

In my head i pictured this for the loop:

`5*0`

4*1

3*2

2*3

1*4

The loop stops at 1 for the first for loop because 1 is the lowest it goes. The second for loop stops because the first one stopped. For the answer choices, I chose 5 because what I pictured in my head, 5 turned out to be the largest number. The real answer to this problem is "C. 35". Does anyone know how to get this answer? I also may be wrong with my understanding of this particular loop. Thank you in advance.

Answer

OKay, You are getting very confused here. This is an example of **Nested Loops**.

The second loop will execute 5 times. So the output will be like -

For x=5 5*1 5*2 5*3 .. and So on

For x=4 4*1 4*2 .. and So on.. Likewise for Other values of x.

Please Read nested loops. That's Basic Programming

Source (Stackoverflow)