Flag-controlled loops
Use meaningful name for the flag
Initialize flag (to true or false)
Test the flag in the loop test expression
Change the value of the flag in loop
body when the appropriate condition
occurs