题解 | #求解立方根#

求解立方根

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

#include <iostream>
using namespace std;

double solve(double num){
    double a = -20;
    double b = 20;
    double c = 0; 
    while(b-a>=0.05){
        if(c*c*c >num){
            b = c ;
        } else {
            a = c;
        }
        c = (a+b)/2;
    }
    if(c>0){   //感觉这个题最麻烦的是怎么判断正负
        c =(int)(c*10 +0.5)/10.0;
    }else 
    c =(int)(c*10 - 0.5)/10.0;
    return c;
}







int main() {
    double s;
    cin >> s;
    cout << solve(s);
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

点赞 评论 收藏
分享
11-15 18:39
已编辑
西安交通大学 Java
全村最靓的仔仔:卧槽,佬啥bg呢,本也是西交么
点赞 评论 收藏
分享
牛客717484937号:双飞硕没实习挺要命的
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务