美文网首页
CS106A assignment3 --problem3 Ex

CS106A assignment3 --problem3 Ex

作者: EarsternRain | 来源:发表于2016-07-03 13:04 被阅读11次
/* TODO: Replace these file comments with a description of what your program
 * does.
 */
import acm.program.*;

public class RaiseToPower extends ConsoleProgram {
    public void run() {
        /* Sit in a loop reading bases and exponents and printing out the values
         * produced by raising the base to the exponent.
         */
        while (true) {
            double base  = readDouble("Enter base: ");
            int exponent = readInt("Enter exponent: ");
            println(base + " ^ " + exponent + " = " + raiseToPower(base, exponent));
        }
    }
    
    private double raiseToPower(double base, int exponent) {
        /* 
         * if exponent = 0,then return 1,
         * else if exponent > 1,return base^exponent,
         * else return 1/(base^exponent)
         */
        if(exponent ==0 ){
            return 1;
        }else if(exponent > 0){
            double temp = 1;
            for (int i=0;i<exponent;i++){
                temp = temp * base; 
            }
            return temp;
        }else{
            double temp = 1;
            for (int i=0 ; i<-exponent ;i++){
                temp = temp * base;
            }
            return 1/temp;
        }
    }
}

相关文章

网友评论

      本文标题:CS106A assignment3 --problem3 Ex

      本文链接:https://www.haomeiwen.com/subject/kaxcjttx.html