# K = 180
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
INCREASE L
REPEAT L TIMES (
INCREASE K
INCREASE K
INCREASE K
INCREASE K
INCREASE K
INCREASE K
INCREASE K
INCREASE K
INCREASE K
)
# U: var is in X
# V: var is in Y
INCREASE U
# A: x is odd
# B: x is even
INCREASE B
REPEAT X TIMES (
REPEAT B TIMES (
INCREASE G
)
REPEAT A TIMES (
CLEAR A
INCREASE B
)
REPEAT G TIMES (
CLEAR G
CLEAR B
INCREASE A
)
)
PRINT X
REPEAT X TIMES (
CLEAR E
REPEAT F TIMES (
INCREASE E
CLEAR F
)
INCREASE F
)
# E = 1 <-> x > 1
REPEAT K TIMES (
REPEAT E TIMES (
# 3x+1
REPEAT A TIMES (
REPEAT U TIMES (
REPEAT X TIMES (
INCREASE X
INCREASE X
)
INCREASE X
PRINT X
)
REPEAT V TIMES (
REPEAT Y TIMES (
INCREASE Y
INCREASE Y
)
INCREASE Y
PRINT Y
)
CLEAR A
INCREASE B
)
# x / 2; x must be even now ###
REPEAT V TIMES (
INCREASE W
)
REPEAT U TIMES (
CLEAR Y
# TODO: May be removed
REPEAT X TIMES (
REPEAT C TIMES (
INCREASE H
)
REPEAT D TIMES (
# check if x/2 is even
REPEAT A TIMES (
INCREASE G
)
REPEAT B TIMES (
CLEAR B
INCREASE A
)
REPEAT G TIMES (
CLEAR G
CLEAR A
INCREASE B
)
# check end, normal stuff
CLEAR D
INCREASE C
INCREASE Y
)
REPEAT H TIMES (
CLEAR C
CLEAR H
INCREASE D
)
)
INCREASE V
CLEAR U
)
REPEAT W TIMES (
CLEAR X
CLEAR C
CLEAR D
INCREASE D
REPEAT Y TIMES (
REPEAT C TIMES (
INCREASE H
)
REPEAT D TIMES (
# check if x/2 is even
REPEAT A TIMES (
INCREASE G
)
REPEAT B TIMES (
CLEAR B
INCREASE A
)
REPEAT G TIMES (
CLEAR G
CLEAR A
INCREASE B
)
# check end, normal stuff
CLEAR D
INCREASE C
INCREASE X
)
REPEAT H TIMES (
CLEAR C
CLEAR H
INCREASE D
)
)
INCREASE U
CLEAR W
CLEAR V
)
### end x/2
# Check if x == 1
CLEAR F
REPEAT U TIMES (
REPEAT X TIMES (
CLEAR E
REPEAT F TIMES (
INCREASE E
CLEAR F
)
INCREASE F
)
)
REPEAT V TIMES (
REPEAT Y TIMES (
CLEAR E
REPEAT F TIMES (
INCREASE E
CLEAR F
)
INCREASE F
)
)
### End check
REPEAT U TIMES (
PRINT X
)
REPEAT V TIMES (
PRINT Y
)
### THE PARENTEESI FOR E = 1 loop
)
# I
# I
# Main loop end v
)