INCREASE D INCREASE D INCREASE D INCREASE P INCREASE P CLEAR J REPEAT P TIMES ( REPEAT P TIMES ( REPEAT P TIMES ( REPEAT P TIMES ( REPEAT P TIMES ( REPEAT P TIMES ( REPEAT P TIMES ( INCREASE J ) ) ) ) ) ) ) PRINT X REPEAT J TIMES ( CLEAR S CLEAR F REPEAT X TIMES ( REPEAT F TIMES ( CLEAR F INCREASE S ) INCREASE F ) CLEAR K REPEAT S TIMES ( CLEAR K INCREASE K ) REPEAT K TIMES ( #GET X MODULO 2 (Z) CLEAR Z INCREASE Z CLEAR R REPEAT X TIMES ( CLEAR O CLEAR F REPEAT Z TIMES ( REPEAT F TIMES ( CLEAR F INCREASE O ) INCREASE F REPEAT O TIMES ( INCREASE R CLEAR O CLEAR Z ) ) INCREASE Z ) REPEAT R TIMES ( INCREASE R ) CLEAR Z REPEAT X TIMES ( INCREASE Z ) REPEAT R TIMES ( CLEAR F CLEAR Y REPEAT Z TIMES ( REPEAT F TIMES ( CLEAR F INCREASE Y ) INCREASE F ) CLEAR Z REPEAT Y TIMES ( INCREASE Z ) ) # # Z IS X MODULO 2 #X = 3X + 1 IF MODULO = 1 REPEAT Z TIMES ( # IF MODULO = 1 REPEAT D TIMES ( REPEAT X TIMES ( INCREASE C ) ) INCREASE C CLEAR X REPEAT C TIMES ( INCREASE X ) CLEAR C PRINT X ) # # DIVIDE X BY 2 CLEAR O CLEAR R CLEAR F CLEAR Z INCREASE Z REPEAT X TIMES ( CLEAR O CLEAR F REPEAT Z TIMES ( REPEAT F TIMES ( CLEAR F INCREASE O ) INCREASE F REPEAT O TIMES ( INCREASE R CLEAR O CLEAR Z ) ) INCREASE Z ) CLEAR X REPEAT R TIMES ( INCREASE X ) CLEAR R PRINT X ) )