Représentation binaire des 320 premiers termes de la suite de Fibonacci.
Remarques :
1 & n permet de récupérer le bit unité, ce sera “1” si le nombre est impair et “0” sinon. n » 1 est une autre façon de diviser un entier par 2 sans tenir compte des décimales.
Version avec la bibliothèque PIL :
from PIL import Image, ImageDraw source = Image.new("RGB", (700, 700), color = "white") draw = ImageDraw.Draw(source) x, m = 0, 700 f = [0, 1] for i in range(m): if i < 2: n = i else: f = f[1:] + [sum(f)] n = f[1] j = 0 while n > 0: if 1 & n: draw.point((x, m - j), fill = 'black') j += 1 n >>= 1 x += 1 source.show()
from kandinsky import * x = 0 f = [0, 1] for i in range(320): if i < 2: n = i else: f = f[1:] + [sum(f)] n = f[1] j = 0 while n > 0: if 1 & n: set_pixel(x, 222 - j, (0, 0, 0)) j += 1 n >>= 1 x += 1