數值的整數次方
阿新 • • 發佈:2017-08-05
double類型 cnblogs dad desc 負數 復雜 簡單的 相等 比較
題目描述
給定一個double類型的浮點數base和int類型的整數exponent。求base的exponent次方。 思路:1 關於次冪的問題特殊的情況,比如次冪為負數,或者基數為0時等等復雜的情況
2 機器中浮點數的比較是由誤差的,因此double類型的比較,不能用簡單的a==0來比較。一般的比較方式是,相減的差在一個很小的區間內,我們就認為是相等的。
class Solution { public: double Power(double base, int exponent) { double mul=1.0; /* 如果exponent = 0 輸出1 */ if(exponent == 0) { return 1.00000; } /* 如果base = 0 輸出0 */ if(base >= -0.000001 && base <= 0.000001) { return 0; } /* 如果指數大於0 */ if(exponent > 0) { for(int index = 0; index < exponent; index++) { mul *= base; } } else { exponent = -exponent; for(int index = 0; index < exponent; index++) { mul *= base; } mul = 1.0/mul; } return mul; } };
http://blog.csdn.net/qq_23217629/article/details/51729501
http://blog.csdn.net/Yanfucahng/article/details/52876300?utm_source=itdadao&utm_medium=referral
數值的整數次方