本文主要是介绍求解立方根【C语言】浮点数的四舍五入,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
- 题目:
- 输入格式
- 输出格式
- 输入样例
- 输出样例
- 算法
- 代码实现
题目:
•计算一个数字的立方根,不使用库函数
详细描述:
•接口说明
原型:
public static double getCubeRoot(double input)
输入:double 待求解参数
返回值:double 输入参数的立方根,保留一位小数
输入格式
待求解参数 double类型
输出格式
输入参数的立方根 也是double类型
输入样例
216
输出样例
6.0
算法
- 二分法缩小取值范围
- 估计精度范围(本题为保留一位小数,所以精度范围<1)
- 浮点数的四舍五入
代码实现
/*浮点数的四舍五入*/
#include<stdio.h>
#define CUBE(a) (a*a*a)
#define AbsoluteValue(a) (a>0?a:-(a))//宏使用时尽量每一项都 加括号
double getCubeRoot(double a)
{double left=0;double right=a;double ret=(left+right)/2.0;while(AbsoluteValue(CUBE(ret)-a)>1.0){if(CUBE(ret)>a){right=ret;}else{left=ret;}ret=(left+right)/2;}ret=(int)(ret*10+0.5)*0.1;//浮点数的四舍五入return ret;
}
int main()
{double a;scanf("%lf",&a);printf("%.1f",getCubeRoot(a));return 0;
}
这篇关于求解立方根【C语言】浮点数的四舍五入的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!