请编程计算1+1/3+1/9+1/27…+1/n<=1.495时最大的n
3个回答
展开全部
#include<stdio.h>
#include<math.h>
void main()
{
double sum=0,a=1.5,temp;
int i=1;
while(sum<1.495)
{
temp=pow((double)1/3,(int)i);
sum=a*(1-temp);
i++;
}
i--;
printf("%d",(int)pow((double)3,(int)i));
}
由题可知应该是一个等比数列求和,利用等比数列的求和公式吧。
#include<math.h>
void main()
{
double sum=0,a=1.5,temp;
int i=1;
while(sum<1.495)
{
temp=pow((double)1/3,(int)i);
sum=a*(1-temp);
i++;
}
i--;
printf("%d",(int)pow((double)3,(int)i));
}
由题可知应该是一个等比数列求和,利用等比数列的求和公式吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main( )
{
double s=0.0;
int n;
for(n=1;s<=1.495;n*=3)
{
s+=1.0/n;
}
printf("n=%d\ns=%f\n",n,s);
return 0;
}
n=729
s=1.497942
请按任意键继续. . .
int main( )
{
double s=0.0;
int n;
for(n=1;s<=1.495;n*=3)
{
s+=1.0/n;
}
printf("n=%d\ns=%f\n",n,s);
return 0;
}
n=729
s=1.497942
请按任意键继续. . .
追问
答案是 81
追答
嗯,判断问题
#include
int main( )
{
double s=0.0;
int n;
for(n=1;;n*=3)
{
s+=1.0/n;
if(s>1.495)
{
s-=1.0/n;
n/=3;
break;
}
}
printf("n=%d\ns=%f\n",n,s);
return 0;
}
n=81
s=1.493827
请按任意键继续. . .
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
double sum=0;
for( int i=1;sum<=1.495;)
{
sum+=1/i;
i+=2;
}
i-=2;
cout<<i<<endl;
for( int i=1;sum<=1.495;)
{
sum+=1/i;
i+=2;
}
i-=2;
cout<<i<<endl;
追问
Y13.OBJ - 1 error(s), 0 warning(s)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询