剑指offer第12题 输出一个数的整数次幂

时间限制:1秒  空间限制:32768K  热度指数:208968

题目描述

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

这道题主要考查我们对于doble和int类型的熟练度,还有当用例为负数的时候,我们该怎么做。


解题的思路如下:


1.创建for循环,进行用例的绝对值次循环,每一次都将做 乘自己的运算(*=)


2.判断用例正负,如果是负,就将1得出的结果取倒数,如果为证跳过直接输出结果。


思路就是这样,代码如下:

public class Solution {
   
    public double Power(double base, int exponent) {
        double result = 1.00;
       if(exponent == 0){
           return result;
       }
        for(int i = 0 ; i < Math.abs(exponent) ; i++){
               result *= base;
          }
//为什么判断小于0时候的算法可以运行, 因为它在for的下边,程序从上到下运行,如果小于0 只要把指数运算交给大于零时候,最后去倒数就可以了。  但是if写在for的上面的话,就不会取倒。
         if(exponent < 0 ){
               result = 1/result;
         }
        return result;
  }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值