剑指offer08--实现某个数的n次方

  题目:实现double Power(double base, int exponent),求base的exponent次平方,不得使用库,同时不用考虑大数问题

不难主要是别忘了考虑边界情况

package 剑指offer;
/*
 * 实现double Power(double base, int exponent)
 * 求base的exponent次平方,不得使用库
 * 同时不用考虑大数问题
 * */
public class Test11 {
	public static void main(String args[]){
		System.out.println(Power(2, 3));
		System.out.println(Power(3, 3));
		
		System.out.println(Power(2, 0));
		System.out.println(Power(0, 2));
		System.out.println(Power(2, -3));
	}
	
	public static double Power(double base, int exponent){
		if(base == 0 && exponent == 0){
			System.out.println("输入的数据错误");
		}
		if(exponent == 0){
			return 1;
		}
		// 以上是判断边界情况
		
		double per = base;
		double result = 1;
		if(exponent < 0)
		{
			while(exponent <= -1)
			{
				result = result*per;
				exponent++;
			}
			result = 1/result;
		}
		if(exponent > 0){
			while(exponent >= 1){
				result = result*per;
				exponent--;
			}
		}
		return result;
	}
}<span style="color:#000099;font-weight: bold;">
</span>


细节决定成败

你可能感兴趣的:(剑指offer08--实现某个数的n次方)