北航计算机2009年的复试上机题目

1 给出立方根的逼近迭代方程 y(n+1) = y(n)*2/3 + x/(3*y(n)*y(n)),其中y0=x.求给定的x经过n次迭代后立方根的值

 

要求:double精度,保留小数点后面六位。(送分题)

输入:x n 

输出:迭代n次后的立方根

sample

input: 3000000 28

output:144.224957

 

这题是送分题,关键在于记住输入和输出格式正确就行!

 

#include<stdio.h> #include<math.h> #define ERROR -1 int main() { int n; int i; double temp,x; scanf("%lf %d",&x,&n); temp=x; for(i=1;i<=n;i++) { temp=temp*2/3+x/(3*temp*temp); } printf("%.6lf/n",temp); return 0; } 

你可能感兴趣的:(output)