题解 | #求解立方根#
求解立方根
https://www.nowcoder.com/practice/caf35ae421194a1090c22fe223357dca
#include <iostream> using namespace std; #define Epison 1e-7 int main() { double n; cin >> n; double temp =n; double res; if(n <Epison){ n =-n; } double m; for (int i = 0; i < 21; i++) { if (i * i * i > n) { m = i - 1; break; } } for (double j = m; j < m+1.1; j += 0.1) { if (j * j * j > n) { if ((j * j * j) - n< n - ((j - 0.1) * (j - 0.1) * (j - 0.1))) res=j; else res =j -0.1; break; } } if(temp >=Epison) cout << res; else cout << -res; }