RosettaCodeData/Task/100-doors/ANSI-BASIC/100-doors.basic
2026-04-30 12:34:36 -04:00

21 lines
554 B
Text

100 REM 100 doors
110 REM The unoptimised door flipping method
120 REM which simulates the process
130 DIM IsDoorOpen(1 TO 100)
140 LET DoorMax = UBOUND(IsDoorOpen)
150 REM Set all doors to closed
160 FOR I = 1 TO DoorMax
170 LET IsDoorOpen(I) = 0
180 NEXT I
190 REM Repeatedly flip the doors
200 FOR I = 1 TO DoorMax
210 FOR J = I TO DoorMax STEP I
220 LET IsDoorOpen(J) = 1 - IsDoorOpen(J)
230 NEXT J
240 NEXT I
250 REM Display the results
260 FOR I = 1 TO DoorMax
270 IF IsDoorOpen(I) <> 0 THEN PRINT I;
280 NEXT I
290 PRINT
300 END