面試題16 數值的整數次方

2021-09-26 23:07:46 字數 971 閱讀 7570

// 面試題16:數值的整數次方

// 題目:實現函式double power(double base, int exponent),求base的exponent

// 次方。不得使用庫函式,同時不需要考慮大數問題。

思路:考慮到base==0,exponent < 0時,無意義。exponent<0時,結果取倒數。還有比較兩個double型別的

數值時,不能用等號。

#include#include#include#include#includeusing namespace std;

const double e = 0.000001;

bool g_invalidinput = false;

bool equal(double a, double b)

double power(double base, int exponent)

unsigned int ab***ponent;

if (exponent < 0)

ab***ponent = (unsigned)(int)(-exponent);

else

ab***ponent = (unsigned)(int)(exponent);

int result = powerwithunsignedexponent(base, ab***ponent);

if (exponent < 0)

return result;

}int powerwithunsignedexponent(double base, unsigned int ab***ponet)//base=0,ba***ponent=0

時輸出了結果為1.0;

return result;

}int powerwithunsignedexponent(double base, unsigned int ab***ponent)

面試題16 數值的整數次方

實現函式double power double base,int exponent 求base的exponent次方。不得使用庫函式,同時不需要考慮大數問題。分析 由於不需要考慮大數問題,這道題看起來很簡單。但是需要特別注意的是 如果輸入的指數小於1 0和負數 的時候怎麼辦?當底數是0且指數是負數的...

面試題16 數值的整數次方

題目描述 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。注意幾種特殊的輸入情況,base為0,以及exponent正負時求指數的差異。方法一 class solution else 改進版 class solution unsigned...

面試題16 數值的整數次方

一 題目 實現函式double power double base,int exponent 求base的exponent次方。不得使用庫函式,同時不需要考慮大數問題。二 關鍵 1.考慮齊全。指數是負數。底數為零且指數是負數的時候。底數是0.2.速度提高。三 解釋 1.求整數次方時,考慮如下的數學公...