Forum >> Principianti >> come mai restituisce "None"

Pagina: 1

Per testare la ricorsione in Python ho riscritto il calcolo del massimo comun divisore. Ma con mia grande sorpresa la funzione scritta per il C++ non dà problemi, mentre in Python risponde "MCD=None". Qualcuno sa dirmi perché?
Ecco il programma:


def mm(a,b):

if a==b:

return a

elif a>b:

mm(b,a-b)

else:

mm(b-a,a)




#fine funzioni- Inizio programma principale

x=int(input("a="))

y=int(input("b="))

print("MCD=",mm(x,y))

Secondo me perche mancano i return...

def mm(a, b):
    if a == b:
        return a
    elif a > b:
        return mm(b, a - b)
    else:
        return mm(b - a, a)



Grazie, penso che sia questa la ragione!


Pagina: 1



Esegui il login per scrivere una risposta.