58. While...do structure ~~~~~~~~~~~~~~~~~~~~ You may have missed the presence of a WHILE-DO or WHILE-ENDWHILE in BBC Basic (it's in version5 as per the Arc). Eg. WHILE X%<100 DO X%=X%+1:A%=A%*B% or WHILE X%<100:X%=X%+1:A%=A%*B%:ENDWHILE (as on BBC BASIC V) REPEAT-UNTIL and FOR-NEXT loops have a disadvantage compared to WHILE-DO or WHILE-ENDWHILE loops in that they always execute at least once, whether they need to or not. In the examples above, the loop would not execute at all if X% was >=100. Well, you can imitate WHILE-DO or WHILE-ENDWHILE with the following: REPEAT IF X%<100 THEN X%=X%+1:A%=A%*B%:UNTIL FALSE ELSE UNTIL TRUE It may not look very elegant, but it avoids GOTOs, so that makes it structured in my book! (Source ... Beebug).