"Data una matrice restituire la somma delle righe ma considerando le sole righe che non presentano elementi pari"
io ho sviluppato due funzioni, ecco il codice:
- Codice:
def sommaRigaDispari (a):
cont=0
for i in a:
if i%2==0:
return 0
else:
cont+=i
return cont
def sommaTotale(mat, somma):
if len (mat)==1:
somma += sommaDispari (mat[0])
return somma
else:
somma += sommaRigaDispari (mat[0])
return sommaTotale(mat[1:])
mat= [[1,1,1],[2,5,7],[4,6,8]]
somma=0
sommaTotale(mat, somma)
il problema è nella seconda funzione, perché se eseguo segnala il seguente errore:
- Codice:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-39-cd94d5f1e263> in <module>()
21 mat= [[1,1,1],[2,5,7],[4,6,8]]
22 summ=0
---> 23 sommaTotale(mat, summ)
<ipython-input-39-cd94d5f1e263> in sommaTotale(mat, somma)
17 else:
18 somma += sommaRigaDispari (mat[0])
---> 19 return sommaTotale(mat[1:])
20
21 mat= [[1,1,1],[2,5,7],[4,6,8]]
TypeError: sommaTotale() missing 1 required positional argument: 'somma'
ho cominciato da poco tempo a programmare ma mi sembra che l'errore di sopra segnali il fatto che non è presente la variabile "somma" nella seconda funzione, ma io l'ho dichiarata. significa questo l'errore "missing 1 required positional argument"? e se sì potreste aiutarmi a capire dove ho sbagliato?
grazie mille in anticipo