# How to create this recursive method.

• April 9th, 2013, 10:41 AM
exodus2041
How to create this recursive method.
I need to write a function which, taking a positive integer n as input,
and finds all sets of numbers that sum up to n.
For example, n=4, the printing result will be:
4
3,1
2,2
2,1,1
1,1,1,1

--- Update ---

• April 9th, 2013, 11:26 AM
Norm
Re: How to create this recursive method.
• April 9th, 2013, 12:40 PM
exodus2041
Re: How to create this recursive method.
Quote:

Originally Posted by Norm

My method so far.
Still working on it.

public class JavaApplication1 {

public static void main(String[] args) {

sum(1,0,4);
}

public static void sum(int now,int remainder, int sum ){

System.out.println(remainder);

if (now == sum)
return;

if (remainder == sum)
{
remainder = 0;
sum(now++,remainder,sum);
return;
}
else{
sum(now,remainder++,sum);
return;
}
}
}
• April 9th, 2013, 12:41 PM
exodus2041
Re: How to create this recursive method.
My method so far.

package javaapplication1;

/**
*
* @author Gordon
*/
public class JavaApplication1 {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
sum(1,0,4);
}

public static void sum(int now,int remainder, int sum ){

System.out.println(remainder);

if (now == sum)
return;

if (remainder == sum)
{
remainder = 0;
sum(now++,remainder,sum);
return;
}
else{
sum(now,remainder++,sum);
return;
}
}
}