题解 | #求解立方根#
求解立方根
https://www.nowcoder.com/practice/caf35ae421194a1090c22fe223357dca
// HJ107 求解立方根.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include<iostream> #include<bits/stdc++.h> using namespace std; double cal(double x)//二分法求解 { double right = 20, left = -20;//定义边界 double y;//定义中间值 while (abs(right - left) > 0.01)//判断边界最小误差 { y = (right + left) / 2;//赋值给中间值 if (y * y * y < x)//中间值和目标值做对比 { left = y;//缩小范围 } else right = y;//缩小范围 } return y; } int main() { double a; while (cin >> a) { cout << setprecision(1) << fixed << cal(a) << endl;//使用保留小数的函数setprecision和fixed配合输出 } return 0; }