鱼C论坛

 找回密码
 立即注册
查看: 1638|回复: 1

[已解决]调和级数不等式

[复制链接]
发表于 2019-9-12 15:24:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
对指定的正数x ,y (2<x<y),试求满足下面调和级数不等式的正整数m的取值范围:
   x <  1 + 1/2 + 1/3 + 1/4 + 1/5 ....... + 1/m < y

#include < stdio.h>
void main()
{
  long c ,d , m ;double x,y ,s;
printf (" 请输入正整数 x, y ( 2 < x <y ):“);
scanf ("%lf , %lf", &x , &y );
m = 0; s = 0;
while( s <= x)
{
  s =  s+ 1.0/(++m);
  c = m;
}
do {
   s = s + 1.0  / (++m)
   while(s < y)
{
d = m - 1;
}
printf("满足不等式的解为 : %ld  <= m <= %ld \n ", c ,d);
return 0;
}
  其中 do{
     s  = s+1.0/(++m);
}
  while(s < y);
{
  d = m - 1;
}
我在书上找的,说是循环求和探索m的上确界d,但我不是很明白,m-1了就是探索m的上确界。


最佳答案
2019-9-12 17:18:07
#include <stdio.h>

void main()
{
        int x,y;
        long c,d,m;
        double s;

        printf ("请输入正整数x,y(2<x<y),输入格式为x,y:");
        scanf ("%d,%d",&x,&y);
        m = 0; s = 0;
        while(s<=x)
        {
                s=s+1.0/(++m);
                c=m;
        }

        do{
                s=s+1.0/(++m);        //累加,直到某个m使得和刚超过y为止,所以结果m要减掉1
        }while(s<y);
        d=m-1;
        printf("满足不等式的解为:%ld <= m <= %ld \n ",c,d);

        return;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-9-12 17:18:07 | 显示全部楼层    本楼为最佳答案   
#include <stdio.h>

void main()
{
        int x,y;
        long c,d,m;
        double s;

        printf ("请输入正整数x,y(2<x<y),输入格式为x,y:");
        scanf ("%d,%d",&x,&y);
        m = 0; s = 0;
        while(s<=x)
        {
                s=s+1.0/(++m);
                c=m;
        }

        do{
                s=s+1.0/(++m);        //累加,直到某个m使得和刚超过y为止,所以结果m要减掉1
        }while(s<y);
        d=m-1;
        printf("满足不等式的解为:%ld <= m <= %ld \n ",c,d);

        return;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-21 01:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表