programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
• Campbell Ritchie
• Jeanne Boyarsky
• Ron McLeod
• Paul Clapham
• Liutauras Vilda
Sheriffs:
• paul wheaton
• Rob Spoor
• Devaka Cooray
Saloon Keepers:
• Stephan van Hulst
• Tim Holloway
• Carey Brown
• Frits Walraven
• Tim Moores
Bartenders:
• Mikalai Zaikin

# Loop sequences

Greenhorn
Posts: 16
• Number of slices to send:
Optional 'thank-you' note:
I thought I was confident in figuring out loops, however, if anyone could give me some clarification as to their pattern, it would be greatly appreciated. Take this sample (MindQ):
30. Consider the code fragment below:

outer: for( int i = 1; i <3; i++ )
{ inner: for( j = 1; j < 3; j++ )
{ if( j==2 )
continue outer;
System.out.println( "i = " +i ", j = " + j );
}
}

Which of the following would be printed to standard output?
a) i = 1, j = 1
b) i = 1, j = 2
c) i = 1, j = 3
d) i = 2, j = 1
e) i = 2, j = 2
f) i = 2, j = 3
g) i = 3, j = 1
h) i = 3, j = 2

I think the answer is a, b,..but I always get confused at this point - does i (after continue outer) start back at 1, or does it carry on from where it left off, being 2?

Ranch Hand
Posts: 63
• Number of slices to send:
Optional 'thank-you' note:
The outer loop will continue iteration(i = 2) on continue statement.

Ranch Hand
Posts: 68
• Number of slices to send:
Optional 'thank-you' note:
Hi Thomas,
The answer given by laksmi is correct. You could have easily verified the answer in a PC.
the statement
if( j==2 )
continue outer;
System.out.println( "i = " +i ", j = " + j );
will never allow the value of j to be printed as 2, Hence j will be always "1" in inner loop. When j reaches "2" the outer loop continues in which i can be 1, 2 only.
hence ans is
i=1 j=1
i=2 j=1
solaiappan

[This message has been edited by P SOLAIAPPAN (edited October 29, 2000).]