1 Computing Powers Exercise 1 Computing a positive integer p

1. Computing Powers (Exercise 1)

Computing a positive integer power of a number is easily seen as a recursive process. Consider an:

·         If n = 0, an is 1 (by definition).

·         If n > 0, an is a * an–1

1.      The program Power.java contains a main program that reads in integers base and exp and calls method power to compute baseexp. Fill in the code for power to make it a recursive method to do the power computation. The comments provide guidance.

2.      Test your program on sample data.

// *****************************************************************

// Power.java

//

// Reads in two integers and uses a recursive power method

// to compute the first raised to the second power.

// *****************************************************************

import java.util.Scanner;

public class Power

{

public static void main(String[] args)

{

    int base, exp;

    int answer;

    Scanner scan = new Scanner(System.in);

    System.out.print(\"Welcome to the power program! \");

    System.out.println(\"Please use integers only.\");

    //get base

    System.out.print(\"Enter the base you would like raised to a power: \");

    base = scan.nextInt();

    //get exponent

    System.out.print(\"Enter the power you would like it raised to: \");

    exp = scan.nextInt();

    answer = power (base,exp);

    System.out.println(base + \" raised to the \" + exp + \" is \" + answer);

}

// ----------------------------------------------

// Computes and returns base^exp

// ----------------------------------------------

public static int power(int base, int exp)

{

    int pow;

    //if the exponent is 0, set pow to 1

    //otherwise set pow to base*base^(exp-1)

    //return pow

}

}  

Solution

//Power.java
import java.util.Scanner;
public class Power
{
public static void main(String[] args)
{
    int base, exp;
    int answer;
    Scanner scan = new Scanner(System.in);
    System.out.print(\"Welcome to the power program! \");
    System.out.println(\"Please use integers only.\");
    //get base
    System.out.print(\"Enter the base you would like raised to a power: \");
    base = scan.nextInt();
    //get exponent

    System.out.print(\"Enter the power you would like it raised to: \");
    exp = scan.nextInt();
    answer = power (base,exp);
    System.out.println(base + \" raised to the \" + exp + \" is \" + answer);
}
/**
   * The recursive method power that takes base
   * and exp as input arguments
   * and returns the base to the power of exp
   * */
public static int power(int base, int exp)
{
    int pow;
    //if the exponent is 0, set pow to 1
    if(exp==0)
       pow=1;
    else  
       pow= base*power(base,exp-1);
    //return pow
   return pow;
}
} //end of Power

------------------------------------------------------------------

Sample output:

Welcome to the power program! Please use integers only.
Enter the base you would like raised to a power: 2
Enter the power you would like it raised to: 16
2 raised to the 16 is 65536

1. Computing Powers (Exercise 1) Computing a positive integer power of a number is easily seen as a recursive process. Consider an: · If n = 0, an is 1 (by defi
1. Computing Powers (Exercise 1) Computing a positive integer power of a number is easily seen as a recursive process. Consider an: · If n = 0, an is 1 (by defi
1. Computing Powers (Exercise 1) Computing a positive integer power of a number is easily seen as a recursive process. Consider an: · If n = 0, an is 1 (by defi

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site