Bonjour à toute la communauté
Je débute sous Python et je dois réaliser la figure jointe (forme de damier étirée).
J'ai commencé un programme qui à l'air de marcher car il m'affiche un damier de 16 cases par 16 mais mon résultat à une forme...simple ! .
Comment faire pour avoir un rendu qui ressemblerait à l'image attendue (progressive) s’il-vous-plait ?

Obtenu :

Nom : obtenu.png
Affichages : 186
Taille : 9,7 Ko
Demandé :

Nom : demande.png
Affichages : 180
Taille : 347,5 Ko


D'après moi, il faudrait utiliser les suites géométriques car on multiplie par quelque chose pour avoir cet effet. Qu'en pensez-vous ?
Mais je ne sais pas comment mettre cette suite en place dans mon programme, sous forme Python...
Quelqu’un pourrait-il m’aider à m'indiquer le programme à compléter s’il-vous-plait ? je suis arrivé au bout de mes capacités...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
############# Importation fonction et modules : ################
from tkinter import *
from random import randrange
############# Fonctions utiliées : ##############
def damier():
	"Trace le damier"
	y = 0
	while y < 16:
		if y % 2 == 0: # Décale une fois sur deux
			x = 0 # la position du premier carré rouge
		else:
			x = 1
		carre_rouge(x*taille_carre, y*taille_carre)
		y += 1
 
def carre_rouge(x, y):
	"Trace les carrés rouges"
	i = 0
	while i < 8:
		can.create_rectangle(x, y, x+taille_carre, y+taille_carre, fill = "#B80000", width = 0) #largeur bordures = 0
		i += 1
		x += taille_carre * 2
 
############## Programme principal : #################
taille_carre = 20 # permet de définir une taille de damier modifiable
fen = Tk() #permet d'ouvrir une fenêtre (grâce au module "tkinter")
can = Canvas(fen, width = taille_carre * 16, height = taille_carre * 16, bg = "white") #pour afficher le damier de taille 16/16
can.pack(side = TOP, padx = 5, pady = 5)
b1 = Button(fen, text = "Résultat", command = damier)
b1.pack(side = BOTTOM, padx = 2, pady = 2)
fen.mainloop()
Un GRAND merci à vous