整数的整数次方

题目

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

分析

  该题考察的是考虑问题的全面性,主要有以下几点:

  1. 当base为0时,结果为0;

  2. 当exponent为0时,结果为1;

  3. 当exponent>0时,........;

  4. 当exponent<0时,........;

代码

 1   public double Power(double base, int exponent){
 2         double result = 1;
 3         if(exponent==0)
 4             return 1;
 5         if(equal(base,0.0))
 6             return 0;
 7         if(exponent>0){
 8             for(int i=0;i<exponent;i++){
 9                 result *= base;
10             }
11         }
12         else{
13             exponent = -exponent;
14             for(int i=0;i<exponent;i++){
15                 result *=base;
16             }
17             result = 1/result;
18         }
19         return result;
20     }
21     //注意double类型的比较
22     public boolean equal(double num1, double num2){
23         if((num1-num2)>-0.0000001 && (num1-num2)<0.0000001)
24             return true;
25         else
26             return false;
27     }
原文地址:https://www.cnblogs.com/jiqianqian/p/6953846.html