Salve ragazzi avrei un problema con questo esercizio, simile ad altri che ho fatto ma che non riesco a risolvere.
Allego il testo dell esercizio:
# ESERCIZIO N. 1
# Si scriva una funzione
# cancellaConUnaX(immagine,n)
# che prenda in input una immagine fatta di nxn caratteri disposti
# su n righe e n colonne e ritorni la stessa immagine in cui le
# diagonali sono riempite con il carattere X e il resto è
# l'immagine originale
# Esempio
# immagine = "..*.. # output = "X.*.X
# .***. # .X*X.
# ***** # **X**
# ..*.. # .X*X.
# ..*.i" # X.*.X"
# n = 5
# RICORDARSI: l'accapo vale un carattere '\n'
# L'esercizio vale 12 punti al più
# la soluzione che da sempre il risultato atteso vale almeno 9 punti
def cancellaConUnaX(immagine,n):
output = ""
# INSERIRE LA VOSTRA SOLUZIONE
return output
Ho provato a risolverlo così senza successo:
def cancellaConUnaX(immagine,n):
output = ""
L = immagine.split("\n")
L.remove("")
for i in range(n):
for j in range(n-1, -1, -1):
if i + j == n-1:
L[i] = L[i].replace(L[i][j], "X")
L[i] = L[i].replace(L[i][j], "X")
for k in L:
output = output + k + "\n"
return output
Grazie in anticipo a chi risponderà!