您的位置:首页 > 其它

71 数值的整数次方

2014-10-15 22:26 357 查看
71.数值的整数次方。

题目:实现函数 double Power(double base, int exponent) ,求 base 的 exponent 次方。

不需要考虑溢出。

*/

/*
71.数值的整数次方。
题目:实现函数 double Power(double base, int exponent) ,求 base  的 exponent  次方。
不需要考虑溢出。
*/ 
#include<iostream>
#include<stdio.h>
using namespace std;

double power1(double base, int exponent)
{
	double result=1.0;
	for(int i=1;i<=exponent;++i)
	result*=base;
	return result;
}

double power2(double base, int exp)//类似与矩阵相乘 
{
	if(exp==1) 
		return base;
	double half=power2(base,exp>>1);//对半相乘 
	return ((exp&1)==1?base:1.0)*half*half;
}

int main()
{
	int n,k; 
	while(cin>>n>>k,n)
	{
		
		cout<<n<<"的"<<k<<"次方,方法一:"<<power1(n,k)<<endl;
		
		cout<<n<<"的"<<k<<"次方,方法二:"<<power2(n,k)<<endl;

	}
	
	return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: