# COLLATZ
INCREASE I TIMES
INCREASE I TIMES
INCREASE I TIMES
INCREASE I TIMES
INCREASE I TIMES
REPEAT I TIMES (
REPEAT I TIMES (
INCREASE I
)
)
# I = 160
INCREASE L
# L for Loop
REPEAT I TIMES (
REPEAT L TIMES (
PRINT X
# Divide X by 2, rounding down
REPEAT X TIMES (
INCREASE B
REPEAT A TIMES (
CLEAR A
INCREASE O
CLEAR B
)
REPEAT B TIMES (
INCREASE A
CLEAR B
)
)
CLEAR A
CLEAR B
# O = round(X/2)
INCREASE D
INCREASE D
REPEAT X TIMES (
INCREASE Z
)
REPEAT O TIMES (
REPEAT D TIMES (
REPEAT Z TIMES (
REPEAT C TIMES (
INCREASE Y CLEAR C
)
INCREASE C
)
CLEAR Z
REPEAT Y TIMES (
INCREASE Z
)
CLEAR C
CLEAR Y
)
CLEAR D
CLEAR
Z = X mod 2
INCREASE E
REPEAT Z TIMES (
INCREASE F
INCREASE F
INCREASE F
REPEAT F TIMES (
REPEAT X TIMES (
INCREASE G
)
)
INCREASE G
CLEAR F
# G = 3*X+1
CLEAR X
REPEAT G TIMES (
INCREASE X
)
CLEAR G
CLEAR F
CLEAR E
) REPEAT E TIMES (
CLEAR X
REPEAT O TIMES (
INCREASE X
)
CLEAR E
)
# BREAK LOGIIKKA ALLA
REPEAT L TIMES (
REPEAT C TIMES (
INCREASE Y CLEAR C
)
INCREASE C
)
CLEAR C
# Y = L - 1
REPEAT Y TIMES (
CLEAR Y
INCREASE Y
)
CLEAR L
REPEAT Y TIMES (
INCREASE L
)
CLEAR Y
CLEAR Z
CLEAR O
)
)