HJ107 求解立方根

2022/8/7 23:25:59

本文主要是介绍HJ107 求解立方根,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

题目描述

计算一个浮点数的立方根,不使用库函数。 保留一位小数。

数据范围:|val| \le 20 \∣val∣≤20 

输入描述:

待求解参数,为double类型(一个实数)

输出描述:

输出参数的立方根。保留一位小数。

解题思路

代码如下:

#include<iostream>
#include<cmath>
using namespace std;

int main(){
    double v;
    while(cin>>v){
        double left, right;
        left = v>-1?-1:v;
        right = v>1?v:1;
        double val;
        while(fabs(right - left) > 1e-8){
            val = (left+right)/2;
            if(v - val*val*val <= 1e-8){
                right = val;
            }else{
                left = val;
            }
        }
        printf("%.1lf\n",val);
    }
}

 



这篇关于HJ107 求解立方根的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程