题解 | #求解立方根#

求解立方根

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

思路

  1. 获得输入数据
  2. 根据题意,采用二分法穷举结果
  3. 确定左右边界为-20~20
  4. 将精度控制在3位小数,输出时保留1位
  5. 当中间值mid的三次方小于实际值val,则将左边界值left更新为mid
  6. 当循环到精度满足条件时,输出左边界值left

Answer

#include<stdio.h>

int main() {
    double val;
    scanf("%lf", &val); //得到输入数据

    double l = -20;
    double r = 20;
    while (val - l * l * l > 0.001) {
        double mid = (l + r) / 2;
        if (mid * mid * mid < val) {
            l = mid;
        } else {
            r = mid;
        }
    }
    printf("%.1f", l);
    return 0;
}
全部评论

相关推荐

01-13 16:55
已编辑
大连理工大学 运营
点赞 评论 收藏
分享
01-12 17:45
门头沟学院 Java
叁六玖:这样的应该钱不多,以前我也被问,我在问他们实习公工资多少,一般都是2200-2800
找实习记录
点赞 评论 收藏
分享
评论
18
1
分享

创作者周榜

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