INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T INCREASE T PRINT X # START Check if X == 1 CLEAR U CLEAR R REPEAT X TIMES ( REPEAT U TIMES ( CLEAR R INCREASE R ) CLEAR U INCREASE U ) # END Check if X == 1 REPEAT R TIMES ( REPEAT T TIMES ( REPEAT T TIMES ( CLEAR U CLEAR R REPEAT X TIMES ( REPEAT U TIMES ( CLEAR R INCREASE R ) CLEAR U INCREASE U ) REPEAT R TIMES ( # START Checking if divisible by 2 CLEAR E # Counter A, starts at 1 CLEAR F # Counter B, starts at 0 CLEAR G # Temp C, holds the value of B, starts at 0 CLEAR H # Holds 1 if even, and 0 if odd CLEAR D # Temp D, holds the new value of X, starts at 0 INCREASE E REPEAT X TIMES ( CLEAR G REPEAT E TIMES ( INCREASE G CLEAR E CLEAR H # IS_EVEN = 0 INCREASE D ) REPEAT F TIMES ( INCREASE E CLEAR F INCREASE H # IS_EVEN = 1 ) REPEAT G TIMES ( INCREASE F ) ) # END Checking if divisible by 2 # START If REPEAT H TIMES ( # START Division by 2 CLEAR X REPEAT D TIMES ( INCREASE X ) # END Division by 2 ) # END If # START else check CLEAR I INCREASE I REPEAT H TIMES ( CLEAR I ) # END else check REPEAT I TIMES ( # START X = X * 3 + 1 REPEAT X TIMES ( INCREASE X INCREASE X ) INCREASE X # END X = X * 3 + 1 ) PRINT X ) ) ) )