# Set max iterations INCREASE A INCREASE A REPEAT A TIMES ( INCREASE A ) REPEAT A TIMES ( INCREASE A ) REPEAT A TIMES ( INCREASE A ) REPEAT A TIMES ( INCREASE A ) #REPEAT A TIMES ( INCREASE A ) #REPEAT A TIMES ( INCREASE A ) INCREASE Z # Set main loop flag REPEAT A TIMES ( REPEAT A TIMES ( REPEAT Z TIMES ( PRINT X # check if X is even # in X: number to check # out E: number divided by 2 # out I: 1 if X == 1 else 0 # out F: 1 if number is odd, else 0 # out G: 1 if number is even, else 0 # uses H CLEAR E CLEAR F CLEAR G INCREASE G CLEAR H CLEAR I INCREASE I REPEAT X TIMES ( REPEAT G TIMES ( INCREASE H CLEAR G ) REPEAT F TIMES ( INCREASE E INCREASE G CLEAR F CLEAR H CLEAR I ) REPEAT H TIMES ( INCREASE F ) ) # if one, clear Z REPEAT I TIMES ( CLEAR Z CLEAR F # prevent odd branch from running ) # if even, set X = E REPEAT G TIMES ( CLEAR X REPEAT E TIMES ( INCREASE X ) ) # if odd, do X += 2X + 1 REPEAT F TIMES ( REPEAT X TIMES ( INCREASE X INCREASE X ) INCREASE X ) ) ) )