设n为正整数,求解n使不等式a
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/06 11:51:20
设n为正整数,求解n使不等式a
/*求解n使不等式a<1+1/(1+1/2)+1/(1+1/2+1/3)+.+1(1+1/2+...+1/n)成立*/
#include <stdio.h>
float sum(int n)
{
\x05float s=0;
\x05int i;
\x05for(i=1;i<=n;++i)
\x05{
\x05\x05s+=1.0/i;//计算(1+1/2+...+1/n),注意是1.0,这样算出来的才是小数
\x05}
\x05s=1.0/s;//计算1/(1+1/2+...+1/n)
\x05return s;
}
int main()
{
\x05float a,s=0;
\x05int n;
\x05printf("请输入a:");
\x05scanf("%f",&a);
\x05for(n=1;n<10000;++n)
\x05{
\x05\x05s+=sum(n);\x05//计算1+1/(1+1/2)+1/(1+1/2+1/3)+.+1(1+1/2+...+1/n)
\x05\x05if(s>a)\x05//当前的n使得不等式成立
\x05\x05\x05break;
\x05}
\x05printf("n最小为:%d",n);//输出得到的n
\x05return 0;
}
上午一上午课,有问题Hi我……坐等下课
2013 05 24 6:58
1L
那就这样吧:
/*求解n使不等式a<1+1/(1+1/2)+1/(1+1/2+1/3)+.+1(1+1/2+...+1/n)成立*/
#include <stdio.h>
float sum(int n)
{
float s=0;
int i;
for(i=1;i<=n;++i)
{
s+=1.0/i;//计算(1+1/2+...+1/n),注意是1.0,这样算出来的才是小数
}
s=1.0/s;//计算1/(1+1/2+...+1/n)
return s;
}
int main()
{
float a,b,s=0,temp;
int n,flag=1,i;
printf("请输入a和b:");
scanf("%f%f",&a,&b);
\x05if(a>b)
\x05{
\x05\x05temp=a;
\x05\x05a=b;
\x05\x05b=temp;
\x05}
for(n=1;n<10000;++n)
{
s+=sum(n); //计算1+1/(1+1/2)+1/(1+1/2+1/3)+.+1(1+1/2+...+1/n)
\x05\x05if(flag)
{
\x05\x05\x05if(s>a) //当前的n使得不等式成立
\x05\x05\x05{\x05
\x05\x05\x05\x05i=n;
\x05\x05\x05\x05flag=0;
\x05\x05\x05}
\x05\x05}
\x05\x05if(s>b)//当前使得s>b
\x05\x05\x05break;
}
printf("n为:%d",i);//输出得到的n
\x05if((n!=(i+1))&&(a!=b))
\x05\x05printf(",%d",n-1);
\x05printf("\n");
return 0;
}
2013 5 24 22:56
应楼主修改问题,给予新的答案
1L
#include <stdio.h>
float sum(int n)
{
\x05float s=0;
\x05int i;
\x05for(i=1;i<=n;++i)
\x05{
\x05\x05s+=1.0/i;//计算(1+1/2+...+1/n),注意是1.0,这样算出来的才是小数
\x05}
\x05s=1.0/s;//计算1/(1+1/2+...+1/n)
\x05return s;
}
int main()
{
\x05float a,s=0;
\x05int n;
\x05printf("请输入a:");
\x05scanf("%f",&a);
\x05for(n=1;n<10000;++n)
\x05{
\x05\x05s+=sum(n);\x05//计算1+1/(1+1/2)+1/(1+1/2+1/3)+.+1(1+1/2+...+1/n)
\x05\x05if(s>a)\x05//当前的n使得不等式成立
\x05\x05\x05break;
\x05}
\x05printf("n最小为:%d",n);//输出得到的n
\x05return 0;
}
上午一上午课,有问题Hi我……坐等下课
2013 05 24 6:58
1L
那就这样吧:
/*求解n使不等式a<1+1/(1+1/2)+1/(1+1/2+1/3)+.+1(1+1/2+...+1/n)成立*/
#include <stdio.h>
float sum(int n)
{
float s=0;
int i;
for(i=1;i<=n;++i)
{
s+=1.0/i;//计算(1+1/2+...+1/n),注意是1.0,这样算出来的才是小数
}
s=1.0/s;//计算1/(1+1/2+...+1/n)
return s;
}
int main()
{
float a,b,s=0,temp;
int n,flag=1,i;
printf("请输入a和b:");
scanf("%f%f",&a,&b);
\x05if(a>b)
\x05{
\x05\x05temp=a;
\x05\x05a=b;
\x05\x05b=temp;
\x05}
for(n=1;n<10000;++n)
{
s+=sum(n); //计算1+1/(1+1/2)+1/(1+1/2+1/3)+.+1(1+1/2+...+1/n)
\x05\x05if(flag)
{
\x05\x05\x05if(s>a) //当前的n使得不等式成立
\x05\x05\x05{\x05
\x05\x05\x05\x05i=n;
\x05\x05\x05\x05flag=0;
\x05\x05\x05}
\x05\x05}
\x05\x05if(s>b)//当前使得s>b
\x05\x05\x05break;
}
printf("n为:%d",i);//输出得到的n
\x05if((n!=(i+1))&&(a!=b))
\x05\x05printf(",%d",n-1);
\x05printf("\n");
return 0;
}
2013 5 24 22:56
应楼主修改问题,给予新的答案
1L
设n为正整数,求解n使不等式a
设n为正整数,解不等式|5n\(n+1)-5|
设n为正整数,解不等式|(5n)/(n+1)-5|<0.001
设n为正整数,d1
4^n-2n-46>0,n为正整数,求使不等式成立的最小正整数
设n为正整数,则不等式|n加1分之5n 减5|小于0.001的解集是?急
设 n,a,b 为正整数,试证明:如果 n = a * b,a
设a n(n为下标!)表示根号n(n是正整数)最接近的整数.
n为正整数,n
数列与不等式证明1题设n为给定的正整数,数列a(0),a(1),...,a(n)定义为a(0)=0.5,a(k)=a(k
①设n为正整数,则10^n是( )
设N为正整数,l5n/n+1-5l