jeeg12 ha scritto:
"Scrivere un método ricorsivo che conti il numero di cifre dispari in un numero."
ho abbozzato questo:
adesso sono bloccato sulla ricorsione in risalita del metodo
A ciascun livello di invocazione, il valore da restituire è il risultato del test su una cifra (quindi 0=pari o 1=dispari)
più il valore restituito dalla invocazione ricorsiva (se da fare). Nel tuo codice questa logica non c'è.
Pensa alla "catena" delle invocazioni con per es. il numero 17403
dispari(17403) questo deve restituire [1] + 2
dispari(1740) questo deve restituire [0] + 2
dispari(174) questo deve restituire [0] + 2
dispari(17) questo deve restituire [1] + 1
dispari(1) questo deve restituire [1]
Ho indicato con [0] e [1] il "contributo" dato dalla cifra sotto esame (quella meno significativa es. 17
4 --> [0] o 1
7 --> [1] ). Ma il valore complessivo da restituire ad un certo livello è quel contributo + il valore ottenuto dalla invocazione ricorsiva. Questo, ripeto, nel tuo codice non c'è.