题解 | #求解立方根#

求解立方根

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

#include <iostream>
using namespace std;
#include <iomanip>
double x3(const double & x){
    double res;
    res = x * x * x;
    return res;
}

double mid(const double x1, const double x2){\
    double res;
    res = (x1 + x2)/2;
	return res;
}

int main() {
    double num;
    cin >> num;
    double res = num/2;
    double lastMaxRes = max(1.0,num);
    double lastminRes = min(-1.0,num);
    while(abs(lastMaxRes - lastminRes) > 0.01){  
        if(x3(res) > num){
            lastMaxRes = res;
            res = mid(lastminRes,res);
            
        }
        else{
            lastminRes = res;
            res = mid(res,lastMaxRes);
        }
    }
    cout << setprecision(1) << fixed << res << endl;
}

主要还需要注意负数输入的问题,如果输入的数绝对值小于1,则需要注意设置的上下限

输出一位精度则使用库函数iomanip的功能

全部评论

相关推荐

白火同学:1、简历可以浓缩成一页,简历简历先要“简”方便HR快速过滤出有效信息,再要“历”用有效信息突出个人的含金量。 2、教育背景少了入学时间~毕业时间,HR判断不出你是否为应届生。 3、如果你的平台账号效果还不错,可以把账号超链接或者用户名贴到对应位置,一是方便HR知道你是具体做了什么内容的运营,看到账号一目了然,二是口说无凭,账号为证,这更有说服力。
面试被问期望薪资时该如何...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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