递归大总结之指数运算
2017-03-07 23:32
204 查看
来自剑指offer
#include<iostream>
using namespace std;
double power(int b, int e)
{
if (e < 0)
{
e = -e;
}
if (e == 0)
{
return 1;
}
if (e == 1)
{
return b;
}
double res = power(b, e >>1);
res *= res;
if (e & 0x1)
{
res = res*b;
}
return res;
}
int main()
{
int a, b;
cin >> a >> b;
double res=power(a,b);
if (b < 0)
{
res = 1 / res;
}
cout << res << endl;
system("pause");
}
#include<iostream>
using namespace std;
double power(int b, int e)
{
if (e < 0)
{
e = -e;
}
if (e == 0)
{
return 1;
}
if (e == 1)
{
return b;
}
double res = power(b, e >>1);
res *= res;
if (e & 0x1)
{
res = res*b;
}
return res;
}
int main()
{
int a, b;
cin >> a >> b;
double res=power(a,b);
if (b < 0)
{
res = 1 / res;
}
cout << res << endl;
system("pause");
}
相关文章推荐
- 高精度指数运算——分治递归
- 递归大总结之位运算实现加法
- 递归运算实现指数运算
- 第十周项目2-二叉树遍历的递归运算
- ENVI扩展工具:利用波段运算修改NaN方法总结
- 整数的各位数之和与指数的递归求法
- 位运算常用操作总结
- 递归总结
- 布尔代数运算总结
- PHP数据运算优先级总结记忆
- 位运算总结
- leetcode 求最大深度 之 递归 总结
- LintCode位运算题总结
- 给定的单链表逆序操作的递归与非递归算法总结
- SQL Server调优系列基础篇(子查询运算总结)
- 递归调用与时间复杂度的学习总结
- 20162327WJH四则运算第二周总结
- 递归实现1-9之间添加"+"或"-"或""使得运算结果为100
- java递归测试总结
- 文件操作总结-递归删除文件(文件下含有多级目录和文件)