数值的整数次方
Posted wanglelelihuanhuan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数值的整数次方相关的知识,希望对你有一定的参考价值。
题目:实现函数double Power(double base,int exponent),求base的exponent次方,不得使用库函数,同时不考虑大数问题。
思路:例如,我们要求一个数的16次方,可以先求这个数的平方,然后在平方的基础上再求这个数的4次方,在4次方的基础上求8次方,在8次方的基础上求16次方。
我们可以用如下公式求a的n次方
#include<iostream>
using namespace std;
double Power(double base, int exponent)
double result = 0.0;
if (exponent == 0) //指数为0
return 1;
else if (exponent == 1) //指数为1
return base;
else
//递归先求平方,再求4次方,以此类推求n次方
result = Power(base, exponent >> 1);
result *= result;
if (exponent & 0x1 == 1)//当为奇数次方时
result *= base;
return result;
int main()
double base; //底数
int exponent;//指数
cout << "please enter two number:"<<endl;
cin >> base;
cin >> exponent;
double ret = Power(base,exponent);
cout << ret << endl;
return 0;
以上是关于数值的整数次方的主要内容,如果未能解决你的问题,请参考以下文章