博客
关于我
将一个数开m次方(模板)
阅读量:244 次
发布时间:2019-02-28

本文共 641 字,大约阅读时间需要 2 分钟。

#include 
#include
#include
#include
#include
using namespace std;int fun(int n) { int ans = 0; while (n) { n /= 2; ans++; } return ans;}int main() { int n; int m = 3; scanf("%d", &n); int k = fun(n); // 计算n的二进制位数 int now = n >> ((k - 1) * (m - 1) / m); int last; do { last = now; now = (last * (m - 1) + n / pow(last, m - 1)) / m; } while (now < last); printf("%d\n", last); return 0;}

以上代码展示了一个读取整数n并计算其开m次根的程序,其中m设定为3。程序首先通过fun函数计算n的二进制位数k。然后通过迭代方法逐步逼近n的开m次根。最后输出近似值。

转载地址:http://enqp.baihongyu.com/

你可能感兴趣的文章