Mi sono andato a leggere la definizione di sequenza di Kaprekar e ho avuto modo di vedere che
la condizione di stop non è next(n) = 0, bensì next(n) = n.
Quindi, sistema i metodi interessati in questo modo:
e non avrai più l'errore.codice:public static List<Integer> getSequence(int n) { List<Integer> sequence = new ArrayList<Integer>(); sequence.add(n); return getSequence(n, sequence); } private static List<Integer> getSequence(int n, List<Integer> sequence) { int next = next(n); if( n == next ) return sequence; sequence.add(next); return getSequence(next, sequence); }

Rispondi quotando