Recursion Questions
-  int getSumBetween(int a, int b)  // precondition  a <= b - get sum between a and b inclusive
 
- int getSumBetween(int a, int b)   // no precondition
 
-  int sum(int n)  // returns sum between 1 and n
 
- int factorial(int n)  // returns factorial ex. 5 factorial is 120 because 5*4*3*2*1 = 120
 
- void printcharacters(String n)  // prints characters of the Sting each one on new line
 
- public void reverse(String na)  // prints String  in reverse
 
- bool isthere(int ar[], int n)  // is number in array
// call a helper function from this with another parameter
 
- void print(int ar[], int n)   // print array - n sent up initially as 0 
 
- void printdigits(int n)  // prints digits one at a time
 
- int sumofdigits(int n)  // returns sum of digits
 
- 
int sumofOddNumbers(int n)   // return sum of the odd numbers 
  // precondition n > 0 ; n may not be odd to start
- 
Given  boolean isPrime(int n) is written and works
Write a function that will return the sum of the prime numbers between 1 and n
int sumOfPrimes(int n)
- int sum(int ar[])  // returns sum of numbers in array
// call a helper function from this with another parameter
- 
Write a function that will find the greatest common factor for 2 numbers using theorem. It says the GCF(a,b) == GCF(b,a) if a is initially less than b. The GCF(a,b) == a if b == 0.  The GCF(a,b) == GCF(b,a%b) otherwise.
 public int findGCF(in a,int b)
- 
void test(int n) {
 if (n > 0) {
 System.out.println(n);
 test(n-1);
 System.out.println(n);
 }
 }
 What would test(4) print?
- 
Write a recursive function to perform exponentiation
 return x^m, assuming m >= 0
 public int exp(int x, int m) {
 }
 
- 
 Given the following method declaration, which of the following is printed as the result of the call mystery(1234)?
 //precondition:  x >=0
 public void mystery (int x)
 {
 System.out.print(x % 10);
 if ((x / 10) != 0)
 {
 mystery(x / 10);
 }
 System.out.print(x % 10);
 }
 a. 1441
 b. 43211234
 c. 3443
 d. 12344321
 e. Many digits are printed due to infinite recursion.
 
- 
Given the following method declaration, what value is returned as the result of the call product(5)?
 public int product(int n)
 {
 if (n <= 1)
 return 1;
 else
 return n * product(n - 2);
 }
 a. 1
 b. 10
 c. 25
 d. 3125
 e. 15
 
- 
Given the following method declaration, what value is returned as the result of the call f(5)?
 public static int f(int n)
 {
 if (n == 0)
 return 0;
 else if (n == 1)
 return 1;
 else return f(n-1) + f(n-2);
 }
 a. 8
 b. 3
 c. There is no result because of infinite recursion.
 d. 5
 e. 0
 
- 
Given the following method declaration, what will redo(82, 3) return?
 public int redo(int i, int j)
 {
 if (i==0)
 return 0;
 else
 return redo(i/j, j)+1;
 }
 a. 5
 b. 4
 c. 6
 d. 7
 e. The method never returns due to infinite recursion.
 
- 
Given the following method. What is the output when m1(5) is called?
 public int m1 (int a)
 {
 if (a == 1)
 return 10;
 else
 return 10 + m1 (a - 1);
 }
 a. 50
 b. 20
 c. 60
 d. 10
 e. 30