一、题目描述
计算一个浮点数的立方根,不使用库函数。保留一位小数。
数据范围:∣val∣≤20 。
二、输入描述
待求解参数,为double类型(一个实数)
三、输出描述
输出参数的立方根。保留一位小数。
四、测试用例
测试用例1
1、输入
27
2、输出
3.0
测试用例2
1、输入
0.008
2、输出
0.2
五、解题思路
- 从输入中读取一个浮点数;
- 初始化低位low为0,高位high为输入的值;
- 判断输入的值的正负情况,如果小于0,将标志flag设为1,并将输入取绝对值;如果输入小于1,则将高位设为1;
- 进入循环,使用二分查找逼近立方根;
- 在每次循环中,计算中间值target为low和high的平均值;
- 计算d为输入值除以target的平方减去target的差;
- 判断d是否在接近0的范围内(-0.1到0.1之间),如果是,则找到了近似的立
本文详细介绍了如何在华为OD机试中使用Java实现计算立方根的算法,不依赖库函数,保留一位小数。文章提供了解题思路、Java源码和效果展示,适合学习和备考华为OD机试。
订阅专栏 解锁全文
680

被折叠的 条评论
为什么被折叠?



