Jyskal
Legacy Member
Kzit dus met een probleem namelijk:
Stel da ge 3 ingeeft, geeft em u
3
2,1
1,1,1
Das allemaal goed en wel ma als ik het uitschrijf op papier kom ik der dus ni! Dan krijg ik:
n = 3, i = 3 | res = 3
n = 3, i = 2 | res = 2,
n = 3, i = 1 | res = 2,1
n = 3, i = 0 | res = ?????
Kan der iemand mij helpen bij wak verkeerd doe?
Thanks in advance!
Code:
import tio.*;
class Recursie {
public static void main(String[] args) {
int n;
System.out.println("Geef een waarde voor N");
n = Console.in.readInt();
berekenPartities(n);
}
static void berekenPartities(int n) {
partities(n, n, "");
}
static void partities(int n, int beginGetal, String res) {
int i;
if (n == 0)
System.out.println(res.substring(0,res.length()-1));
else if (n > 0) {
for (i = beginGetal; i > 0; i--)
partities(n - i, i, res + i +",");
}
}
}
Stel da ge 3 ingeeft, geeft em u
3
2,1
1,1,1
Das allemaal goed en wel ma als ik het uitschrijf op papier kom ik der dus ni! Dan krijg ik:
n = 3, i = 3 | res = 3
n = 3, i = 2 | res = 2,
n = 3, i = 1 | res = 2,1
n = 3, i = 0 | res = ?????
Kan der iemand mij helpen bij wak verkeerd doe?
Thanks in advance!