Perchè se la fai sui numeri pari devi provvedere a 2 casi base e non uno solo: se provi a farlo andare con un numero pari, sottraendo sempre 2 non arriverai mai ad ottenere 1, ma 0
Hai a disposizione anche la funzione cond che ti può essere utile se hai più di un caso da testare (è l'equivalente dello switch() di C e Java).codice:(define prova2 (lambda (n) (if (= n 1) 1 (if (= n 0) 1 (* n (prova2(- n 2))) ) ) ) )
Ciao.![]()