任务描述
有一个神奇的迭代公式:x (n+1) = 根号下xn+2
,无论x的初值(大于2的正数)选的多么大,若干次迭代之后,x都与2无限接近,也就是说x序列的极限是2。假设x
0
=99999999.0(8个9),编程输入一个正整数n,输出x
n
的值(保留10位小数)。
输入样例:
8
输出样例:
x[8]=2.0051798692
输入样例:
16
输出样例:
x[16]=2.0000000790
我写的代码:
#include
#include
int main() {
double xn,xn1;
int n,i;
scanf("%d",&n);
for(i=99999999.0;i<=n;i++){
xn1=sqrt(xn+2);
if(i>n)break;
}
printf("x[%d]= %.10f",n,xn1);
return 0;
}
你写的这个描述要改下,完全乱掉了