题解 | #求解立方根#

求解立方根

http://www.nowcoder.com/practice/caf35ae421194a1090c22fe223357dca

import java.util.*; public class Main { static double i=0.0; public static void main( String [] agrs){ Scanner sc = new Scanner(System.in); double input= sc.nextDouble(); getResult(input,20.0,-20);

    System.out.print((double)Math.round(i*10)/10);
}
//迭代函数

public static void getResult(double input, double max, double min) {

    if (input>0) {
        i = (max + min) / 2;
        double s=i*i*i;
        //精度控制在0.01级别
        if ((s- input <= 0.01 && s - input >= 0) ) {
            return;
        }
        if (s - input > 0.01 ) {
            getResult(input, i, min);
        } else {
            getResult(input, max, i);
        }
    } else {
        i = (min + max) / 2;
        double s=i*i*i;
        if ((input-s <= 0.01 && input-s >= 0) ) {
            return;
        }
        if (input-s > 0.01 ) {
            getResult(input, max, i);
        } else {
            getResult(input, i, min);
        }

    }

}

}

全部评论

相关推荐

点赞 评论 收藏
分享
05-09 14:45
门头沟学院 Java
点赞 评论 收藏
分享
05-29 22:11
门头沟学院 Java
Elastic90:抛开学历造假不谈,这公司的招聘需求也挺怪的,Java开发还要求你有图文识别、移动端开发和c++的经验,有点逆天了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务