php 立方根,PHP立方根
如果你需要100個%可靠的結果,你應該使用GMP library任意精度計算。
gmp_root函數應該做你需要的。在啓用GMP擴展的情況下,您將需要PHP版本5.6或更高版本。
$num = gmp_init(10648);
$third_root = gmp_root($num, 3);
var_dump(gmp_strval($third_root)); // string(2) "22"
如果GMP庫不方便對你和你保證,你的數量的整數根,那麼你可以嘗試以下方法:
function getLevel($base, $root = 3.0) {
$exact = pow($base, 1.0/$root);
$ceil = ceil($exact);
$floor = floor($exact);
if (pow($exact, $root) == $base) { return $exact; }
if (pow($ceil, $root) == $base) { return $ceil; }
if (pow($floor, $root) == $base) { return $floor; }
// Default: no integer root
return FALSE;
}
它檢查的準確,floor和ceil結果的值找出哪個是正確的答案。如果它不是三者中的一個,那麼該數字沒有整數根,並且默認爲FALSE。
var_dump(getLevel(10648, 3)); // 22^3 => float(22)
var_dump(getLevel(16807, 5)); // 7^5 => float(7)
var_dump(getLevel(1, 3)); // Should always return 1 => float(1)
var_dump(getLevel(1, 99)); // Should always return 1 => float(1)
var_dump(getLevel(7)); // Has no integer 3rd root => bool(false)
當然,你可以使功能return $floor;或return $ceil;作爲默認的情況下,但是這取決於你。
php 立方根,PHP立方根相关推荐
- python牛顿法算立方根_立方根求解(牛顿迭代法)
计算一个数字的立方根,不使用库函数 详细描述: 接口说明 原型: public static double getCubeRoot(double input) 输入:double 待求解参数 返回值: ...
- 怎样用计算机求立方根的近似数,(教案3)6.2 立方根
(教案3)6.2 立方根 共享者:ml 共享时间:2015/6/25 下载:次 资源类别:教案 资源属性:同步课程 适用地区:北京 关键字:立方根 <立方根> 课程目标 ...
- chatgpt赋能python:Python中的立方根-一种快速简便的计算方法
Python中的立方根 - 一种快速简便的计算方法 Python是一门流行的开源编程语言,它被广泛应用于各种应用领域,包括科学计算和数据分析.在数学计算中,Python可以用于计算各种函数,包括立方根 ...
- HJ107 二分法求求解立方根
描述 计算一个数字的立方根,不使用库函数. 保留一位小数. 输入描述: 待求解参数,为double类型(一个实数) 输出描述: 输入参数的立方根.保留一位小数. #include <iostre ...
- 题目:任意给定一个浮点数,计算这个浮点数的立方根。(基于二分法和牛顿迭代法)(基于Java实现)
题目:任意给定一个浮点数,计算这个浮点数的立方根.(基于二分法和牛顿迭代法)(基于Java实现) 首先,来分析一下这道题,其实在leetcode上做了求解根号3的题之后,对于这种求解立方根的题,基本上 ...
- 题目1166:迭代求立方根
题目描述: 立方根的逼近迭代方程是 y(n+1) = y(n)*2/3 + x/(3*y(n)*y(n)),其中y0=x.求给定的x经过n次迭代后立方根的值. 输入: 输入有多组数据. 每组一行,输入 ...
- python牛顿法求立方根_【华为机试】求解立方根(牛顿迭代法)
先分享马同学的科普,深入浅出,很容易理解.https://www.matongxue.com/madocs/205.html 关于牛顿迭代法,除开理论部分,核心公式其实就一个. 题目描述 •计算一个数 ...
- 题库练习7(最小公倍数、求立方根、字符串逆序、记负均正、字符串分割)
1. 求最小公倍数 import java.util.*;public class Main{public static void main(String[] args){Scanner sc=new ...
- java中求立方根_求解立方根
0 夹逼法==二分法 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scan ...
最新文章
- 中间件(5)负载均衡
- 算法--------二叉树的中序遍历
- JS操作DOM元素属性和方法
- 单片机程序配置成开漏输出_单片机I/O开漏输出详解
- VTK:Utilities之ShallowCopy
- camunda流程定义表无数据_BPM - 业务流程管理
- 11-1 操作系统概念
- php5.4 mysql connect_php5.4 Call to undefined function mysql_connect()
- OLAP引擎:基于Presto组件进行跨数据源分析
- 【C++】类模板实现扩容数组并且分离,抽取出hpp文件
- web报表工具FineReport最经常用到部分函数详解
- HNU 实验七 字符串 E-mail地址
- myeclipse读取mysql表中数据_在myeclipse中连接mysql查询数据
- Mac下编译OpenCV for android
- CyclicBarrier源码解读
- 政策 | 辅导班的“超纲教学”凉了?教育部印发六科负面清单!
- 计算机获得超级管理员,怎么获得Win7超级管理员权限
- 7-4 NetworkPolicy网络策略简介与Ingress及Egress案例
- python程序设计实用教程清华大学出版社_清华大学出版社-图书详情-《Python程序设计简明教程》...
- 第一台超高速巨型电子计算机,1997年,( )巨型机的研制成功,使我国在这个领域跨入了世界先进行列。...
热门文章
- Maven Assembly插件介绍
- Python爬虫教程(一):爬虫
- nano编辑器保存退出
- Could not enlist in transaction on entering meta-aware object
- 旷视回顾全球十大AI治理事件,技术与伦理安全如何进行落地
- 字符串分隔StringUtils.delimitedListToStringArray
- Jetson nano (4GB B01) 系统安装,官方Demo测试 (目标检测、手势识别)
- 苹果手机软件闪退怎么解决_LOL手游卡顿闪退怎么办-卡顿闪退解决方法解析
- opencv图像校正
- 详解 WebRTC 高音质低延时的背后 — AGC(自动增益控制)