从第二项起,每一项的分母与前一项的分母之差是一个等比数列 s=1/1+1/3+1/7+1/15+……
如输入:7(n=7)
输出:
1.599
#include <stdio.h>
int main()
{
int i,n,r=1,t=1;
double s = 0;
scanf("%d",&n);
for (i=1;i<=n;i++)
{
s += 1.0/t;
r*=2;
t = r +t;
//printf("%d ",t);
}
printf("%.3lf",s);
return 0;
}
#include <stdio.h>
int main()
{
int n,fm=1;
int b=1;
double sum=0;
scanf("%d",&n);
for(i=0;i<n;i++)
{
sum += 1.0/fm;
b*=2;
fm += b;
}
printf("%.3lf",sum);
return 0;
}
#include<stdio.h>
#include<math.h>
int main(){
int n,m=1,k=1,i;
double s=0;
scanf("%d",&n);
for(i=1;i<=n;i++){
s+=1.0/m;
m+=pow(2,k);
k++;
}
printf("%.3lf",s);
return 0;
}
觉得有用的话采纳一下哈