题解 | #求解立方根#

求解立方根

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

这道题使用二分查找的思想其实并不难, 难点在于如何控制终止条件, 否则可能会出错, k为val的小数位数, 我们需要使用round函数对结果进行小数点保留, 进而进行比较

val = float(input())
left, right = -20, 20
item = 0
k = len(str(val).split('.')[-1])
while left < right:
    mid = (left+right)/2
    res = round(mid**3,k)
    if res<val:
        left = mid 
    elif res>val:
        right = mid 
    else:
        print("{:.1f}".format(mid))
        break
全部评论

相关推荐

10-16 23:37
已编辑
门头沟学院 运营
据说名字越长别人越关...:西交做运营吗。。就业市场已经颠了
简历被挂麻了,求建议
点赞 评论 收藏
分享
10-13 12:53
已编辑
湖北工业大学 前端工程师
小海c:包装一下,第一个感觉是字节青训营的那个,后面那个是黑马的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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