Autre proposition plus 'procédurale':
Code:
1
2
3
4
5
6
7
8
9
10
11
12 #nombre d'étoiles à la n-ième ligne def NumberStars(ligne): q=ligne/3 return 1+q*(q+1)+(2*(q+1))*(ligne%3) # ligne d'indice n d'un sapin qui en comporte au total m def Ligne (n,m): return " "*((NumberStars(m)-NumberStars(n))/2)+"*"*NumberStars(n) #affiche la partie supérieure d'un sapin de hauteur 20 for n in range(0,20): print Ligne(n,20)