Triangles en ASCII
Exercice en trois parties
Dans un programme, l'ordre des instructions est bien sûr important !
Ici, vous pourrez résoudre les trois parties de manières totalement indépendantes.
- La partie 1, concerne la fonction
affiche_lignequi prend un entierken paramètre et qui affiche une ligne dekcaractères'#'. - La partie 2, concerne la fonction
triangle_basqui prend un entiernen paramètre et qui affiche un triangle de hauteurnpointe en bas. - La partie 3, concerne la fonction
triangle_hautqui prend un entiernen paramètre et qui affiche un triangle de hauteurnpointe en haut.
>>> affiche_ligne(4) # affiche une ligne de 4 '#'
####
>>> triangle_bas(4) # affiche un triangle pointe en bas de 4 lignes
####
###
##
#
>>> triangle_haut(4) # affiche un triangle pointe en haut de 4 lignes
#
##
###
####
Partie 1
Il y a plusieurs façons correctes de coder une fonction affiche_ligne. Parmi les possibilités, regardez et étudiez :
def affiche_ligne(k):
"Affiche k caractères '#' sur une ligne"
ligne = ""
for _ in range(k):
ligne = ligne + '#'
print(ligne)
def affiche_ligne(k):
"Affiche k caractères '#' sur une ligne"
ligne = '#' * k
print(ligne)
def affiche_ligne(k):
"Affiche k caractères '#' sur une ligne"
for _ in range(k):
print('#', end="")
print()
def affiche_ligne(k):
"Affiche k caractères '#' sur une ligne"
for _ in range(k):
print("", end='#')
print()
def affiche_ligne(k):
"Affiche k caractères '#' sur une ligne"
ligne = croisillons(k) # il manque la fonction croisillon !!!
print(ligne)
Coder une fonction récursive croisillons qui prend en paramètre k, un entier et qui renvoie une chaine de caractères composée de k croisillons. La fonction croisillons n'affiche pas, elle renvoie !
Contraintes
Pour ces dernières parties d'exercice d'écriture, on devra uniquement utiliser la fonction affiche_ligne qui prend un entier k en paramètre et qui affiche une ligne de k caractères '#'.
Partie 2
Coder une fonction récursive triangle_bas prenant un entier n en paramètre et qui affiche (avec affiche_ligne) un triangle pointe en bas.
>>> triangle_bas(4) # affiche un triangle pointe en bas de 4 lignes
####
###
##
#
# Tests (insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)
Partie 3
Coder une fonction récursive triangle_haut prenant un entier n en paramètre et qui affiche (avec affiche_ligne) un triangle pointe en haut.
>>> triangle_haut(4) # affiche un triangle pointe en haut de 4 lignes
#
##
###
####
# Tests (insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)