# print first value PRINT X # setting up for main loop INCREASE Y INCREASE Y INCREASE Y REPEAT Y TIMES ( INCREASE Y INCREASE Y INCREASE S ) REPEAT Y TIMES ( REPEAT Y TIMES ( INCREASE Z ) ) # mainloop REPEAT Z TIMES ( # Checking if the x is not 1 # Setting up values CLEAR R INCREASE R CLEAR N INCREASE N CLEAR E # if clause, if r is 1 then x is not 1 REPEAT X TIMES ( INCREASE E REPEAT N TIMES ( CLEAR R CLEAR N CLEAR E ) REPEAT E TIMES ( CLEAR R INCREASE R ) CLEAR E ) # Do one cycle REPEAT R TIMES ( CLEAR T # Save x in t REPEAT X TIMES ( INCREASE T ) CLEAR A CLEAR X # Is even or add, a is 0 or 1 REPEAT T TIMES ( INCREASE E REPEAT A TIMES ( INCREASE X CLEAR A CLEAR E ) REPEAT E TIMES ( CLEAR E INCREASE A ) ) # If a is 1 aka if x is odd REPEAT A TIMES ( # 3n+1 # using s which is 3 to multiply CLEAR X REPEAT S TIMES ( REPEAT T TIMES ( INCREASE X ) ) INCREASE X ) PRINT X ) )