Nub Nub - 1 month ago 7
Java Question

How to solve for x when observing through a for loop

Assume x is an integer and has been initialized to some value. Consider the code

for (int a = 1; a < 20; a++)
if (x < 0)
x = a;


Which statement will have the same effect on the value of x?

a.
if (x < 0) x = 1;

b.
if (x < 20) x = 19;

c.
if (x < 0) x = 19;

d.
if (x < 20) x = 20;

e.
x = 1;


For this problem I was a little confused on what the question was asking because the answer was not what I was expecting. I chose answer choice b.
if (x < 20) x = 19;
because 19 is less than 20 and the other answer choices are false when plugging into 'x'. The answer to this question is actually a.
if (x < 0) x = 1;
. I am confused on why answer choice a. is the answer.

Lew Lew
Answer

The answer is a. if x is less than 0, then the loop will assign 1 to x in the first iteration. The subsequent iterations will have no effect as x will be more than 0. if x is already more than 0, then both approaches will not alter the value of x.