""" Affiche le caractère c """ def afficheCaractere(c): print(c + " ", end = "") """ Affiche n fois le caractère c, ne revient pas à la ligne après le dernier caractère. """ def ligneSansReturn(n, c): for _ in range (0, n): afficheCaractere(c) """ Affiche n fois le caractère c, revient à la ligne après le dernier caractère. """ def ligneAvecReturn(n, c): ligneSansReturn(n, c) print() """ Affiche n espaces. """ def espaces(n): ligneSansReturn(n, ' ') """ Affiche le caractère c a la colonne i, ne revient pas à la ligne après. """ def unCaractereSansReturn(i, c): espaces (i - 1) afficheCaractere(c) """ Affiche le caractère c à la colonne i, revient à la ligne après. """ def unCaractereAvecReturn(i, c): unCaractereSansReturn(i, c) print() """ Affiche le caractère c aux colonnes i et j, revient à la ligne après. """ def deuxCaracteres(i, j, c): unCaractereSansReturn(i, c) unCaractereAvecReturn(j - i, c) """ Affiche un carré de côté n. """ def carre(n): ligneAvecReturn(n, '*') for i in range (1, n): deuxCaracteres(1, n, '*') ligneAvecReturn(n, '*') """ Affiche un chapeau dont la pointe - non affichée - est sur la colonne centre, avec les caractères c. """ def chapeau(centre, c): i = centre - 1 j = centre + 1 while (i >= 2): deuxCaracteres(i, j, c) i -= 1 j += 1 """ Affiche un chapeau à l'envers avec des caractères c, la pointe - non affichée - est à la colonne centre. """ def chapeauInverse(centre, c): i = 2 j = 2*(centre - 1) while(i+1 < j): deuxCaracteres(i, j, c) i += 1 j -= 1 """ Affiche un losange de côté n. """ def losange(n): unCaractereAvecReturn(n, '*') chapeau(n, '*') deuxCaracteres(1, 2*n - 1, '*') chapeauInverse(n, '*') unCaractereAvecReturn(n, '*') """ Affiche une croix de côté n. """ def croix(n): deuxCaracteres(1, 2*n - 1, '*') chapeauInverse(n, '*') unCaractereAvecReturn(n, '*') chapeau(n, '*') deuxCaracteres(1, 2*n - 1, '*') taille = int(input("Saisissez la taille des figures : ")) carre(taille) losange(taille) croix(taille)