/*
 * 计算乘方
 * */
package com.divide;

public class DEevide {

    public static void main(String[] args) {

        //static 方法只能调用static方法,或者通过实例来调用
        DEevide pTest=new DEevide();
        System.out.println(pTest.pow(-2,3));
    }

 //判断乘方是正还是负
 public  double pow(double x,int n){
     if(n>=0){
         return power(x,n);
     }else{
         return 1/power(x,-n);
     }
 }

 public static double power (double x,int n){
     if(n==0){
         return 1;
     }
     double v =power(x,n/2);
     if(n%2==0){
         return v*v;
     }else{
         return v*v*x;
     }
 }
}