Is the example program correct?

Answer:

No—the brackets are not balanced.

Bad Balance

DO must match LOOP:

PRINT "Enter the number of repeats"
INPUT LIMIT
LET COUNT=1

DO WHILE COUNT <= LIMIT
  IF COUNT < LIMIT / 2 THEN
    PRINT "Hello"
  ELSE
    PRINT "Mars"
LOOP
PRINT "Done"
END IF

END

But now the "inside bracket" IF does not have an "inside bracket" End IF to match. The program is NOT correct. Here is a corrected version:

PRINT "Enter the number of repeats"
INPUT LIMIT
LET COUNT=1

DO WHILE COUNT <= LIMIT
  IF COUNT < LIMIT / 2 THEN
    PRINT "Hello"
  ELSE
    PRINT "Mars"
  END IF

LOOP
PRINT "Done"

END

The inside bracket IF now has another inside bracket END IF which it can match. Another way to think about this is that the loop body should be a complete self-contained little task, with all its control structures complete. So any brackets for those control structures must be matched inside the loop body.

QUESTION 19:

Is the following ALGEBRA correct?

X = [ ( 2Y + 3)( Z - 2) ] / ( B + A )
(Don't figure out what it means (if anything), just decide if it looks OK.)