【调和级数】
调和级数是 的级数,在 n 趋于无穷时其部分和没有极限或部分和为无穷大。
一般情况下,我们需要求
其至今没有一个完全正确的公式,但当 n 很大时,可以使用欧拉给出的近似公式
其中,C 是欧拉常数,C ≈ 0.57721566490153286060651209
故而,当 n 很小时,由于精度问题,可以通过打表的方法来求,而当 n 很大时,直接使用欧拉近似公式即可
double a[N];
int main(){
a[1]=1;
for(int i=2;i<=10000;i++)
a[i]=a[i-1]+1.0/i;
while(scanf("%d",&n)!=EOF){
if(n<=10000)
printf("%.10lf\n",a[n]);
else{
double res=log(n)+1.0/(2*n)+0.57721566490153286060651209;
printf("%.10lf\n"+,res);
}
}
return 0;
}
【泰勒级数展开公式】