博客
关于我
将一个数开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/

你可能感兴趣的文章
OpenStack安装部署实战
查看>>
OpenStack架构
查看>>
OpenStack版本升级与故障排查实战
查看>>
OpenStack的基本概念与架构详解
查看>>
Openstack的视频学习
查看>>
openstack虚拟机迁移live-migration中libvirt配置
查看>>
ORACEL学习--理解over()函数
查看>>
Oracle 11g数据库安装和卸载教程
查看>>
ORACLE Bug 4431215 引发的血案—原因分析篇
查看>>
oracle dblink 创建使用 垮库转移数据
查看>>
oracle dblink结合同义词的用法 PLS-00352:无法访问另一数据库
查看>>
Oracle dbms_job.submit参数错误导致问题(ora-12011 无法执行1作业)
查看>>
oracle dg switchover,DG Switchover fails
查看>>
Oracle EBS环境下查找数据源(OAF篇)
查看>>
Oracle GoldenGate Director安装和配置(无图)
查看>>
oracle script
查看>>
Oracle select表要带双引号的原因
查看>>
Oracle SOA Suit Adapter
查看>>
Oracle Spatial空间数据库建立
查看>>
UML— 活动图
查看>>