- 题目描述:
-
立方根的逼近迭代方程是 y(n+1) = y(n)*2/3 + x/(3*y(n)*y(n)),其中y0=x.求给定的x经过n次迭代后立方根的值。
- 输入:
-
输入有多组数据。
每组一行,输入x n。
- 输出:
-
迭代n次后的立方根,double精度,保留小数点后面六位。
- 样例输入:
-
3000000 28
- 样例输出:
-
144.224957
思路:
循环迭代。
代码:
#include <stdio.h> int main(void) { double x, y; int n, i; while (scanf("%lf%d", &x, &n) != EOF) { y = x; for(i=1; i<=n; i++) { y = y*2/3 + x/(3*y*y); } printf("%.6lf ", y); } return 0; } /************************************************************** Problem: 1166 User: liangrx06 Language: C Result: Accepted Time:0 ms Memory:912 kb ****************************************************************/