[Python] python[Python] python
📉
Collatz Conjecture
Week 16, 2026
from PIL import Image
WIDTH = 1000
HEIGHT = 1000
LIMIT = WIDTH * HEIGHT
img = Image.new("RGB", (WIDTH, HEIGHT))
pixels = img.load()
def collatz_pixel(n: int):
x = n
even_count = 0
odd_count = 0
max_value = x
if x == 1:
seq = [1, 4, 2, 1]
even_count = sum(1 for v in seq if v % 2 == 0)
odd_count = sum(1 for v in seq if v % 2 == 1)
max_value = max(seq)
else:
while True:
if x % 2 == 0:
even_count += 1
x //= 2
else:
odd_count += 1
x = 3 * x + 1 if x != 1 else 1
if x > max_value:
max_value = x
if x == 1:
odd_count += 1
break
r = min(even_count, 255)
g = min(odd_count, 255)
b = min(max_value // n, 255)
return (r, g, b)
for n in range(1, LIMIT + 1):
px = (n - 1) % WIDTH
py = (n - 1) // WIDTH
pixels[px, py] = collatz_pixel(n)
img.save("collatz.png", "PNG")
print("Saved image")