BEGIN INTEGER LIMIT = 100, door, stride; BOOLEAN ARRAY DOORS(1:LIMIT); TEXT intro; FOR stride := 1 STEP 1 UNTIL LIMIT DO FOR door := stride STEP stride UNTIL LIMIT DO DOORS(door) := NOT DOORS(door); intro :- "All doors closed but "; FOR door := 1 STEP 1 UNTIL LIMIT DO IF DOORS(door) THEN BEGIN OUTTEXT(intro); OUTINT(door, 0); intro :- ", " END; OUTIMAGE END.