剑指offer-数值的整数次方

Posted by BY Tony Huang on May 21, 2019

题目描述:

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。

算法思想:

这道题我觉得主要考察的是你能不能在面试的时候想问题想全面,这道题就有6种情况,注意取倒数的时候要用double类型在这里插入图片描述 代码:

class Solution {
public:
    double Power(double base, int exponent) {
        double i,j=1,result=1,k=87;
        if((base==0)&&(exponent)>0)
            return 0;
        if((base==0)&&(exponent)==0)
            return 1;
       if((base==0)&&(exponent)<0)
           return 0;
        if((base!=0)&&(exponent)>0)
        {
            for(i=0;i<exponent;i++)
            {
                result=result*base;
                
            }
            return result;
        }
        if((base!=0)&&(exponent)==0)
        {
            return result;
        }
        if((base!=0)&&(exponent)<0)
        {
            for(i=exponent;i<0;i++)
            {
                result=result*base;
                
            }
            result=1/result;
            return result;
        }
            return j;
    }
     
};