第一种方法:

可以设置一个标记符flag=1,然后每次循环累加之后让flag变为-flag,这样就解决了加减的问题

代码实现如下:

#include<stdio.h>int main()
{int n=0;int i=0;double sum=0;int flag=1;scanf("%d",&n);for(i=1;i<=n;i++){sum+=1.0/i*flag;flag=-flag;}printf("%lf",sum);return 0;
}

第二种方法:

观察算式,发现当分母为偶数时,总和需要减去这个数,当分母是奇数时,需要加上这个数

下面是代码实现:

#include<stdio.h>int main()
{int n=0;int i=0;double sum=0;scanf("%d",&n);for(i=1;i<=n;i++){if(i%2==1)sum+=1.0/i;elsesum-=1.0/i;}printf("%lf",sum);return 0;
}

第三种方法:

也可以看作是第二种方法的变形,将所有分母是奇数的项累加,将分母是偶数的项累减,得到结果。

#include<stdio.h>int main()
{int n=0;int i=0;double sum=0;scanf("%d",&n);for(i=1;i<=n;i+=2){sum+=1.0/i;}for(i=2;i<=n;i+=2)sum-=1.0/i;printf("%lf",sum);return 0;
}

所以,大家一定要开动脑筋,解决问题的方法一定是有的!

分数求和的三种方法(1/1-1/2+1/3-1/4+1/5+...+1/n)相关推荐

  1. 怎样在表格中输入分数?这三种方法快速教你搞定!

    很多对电脑不太熟悉的小伙伴,有些技巧是不知道怎样操作的.就拿在表格中输入分数吧,很多的小伙伴是不知道键盘上的哪个符号是分数的符号.今天小编给大家分享两种在表格中输入分数的技巧! No.1日期分数输入法 ...

  2. 实现1~100求和的三种方法

    构思: (1)第一次循环 i = 1, sum = sum + i = 0 + 1 = 1 ,这里儿右边的sum的值为初值0,将1赋给左边的sum后,sum的最新值变成了1 (2)第二次循环 i = ...

  3. php100以内质数求和,100以内的质数_PHP质数计算三种方法 php求100以内的质数

    摘要 腾兴网为您分享:PHP质数计算三种方法 php求100以内的质数,自动刷宝,长沙银行,猿辅导,愈加等软件知识,以及cf一键刷枪,业主名录采集软件,卡乐光电,魔方虚拟光驱,掌上徐州,卡农社区,fa ...

  4. 独家 | 将时间信息编码用于机器学习模型的三种编码时间信息作为特征的三种方法...

    作者:Eryk Lewinson 翻译:汪桉旭 校对:zrx本文约4400字,建议阅读5分钟 本文研究了三种使用日期相关的信息如何创造有意义特征的方法. 标签:时间帧,机器学习,Python,技术演示 ...

  5. matlab求pi值的三种方法

    https://www.icourse163.org/learn/CSU-1002475002?tid=1450231442#/learn/content?type=detail&id=121 ...

  6. 平摊分析的三种方法(聚集、会计和势能)+举例(栈操作、二进制加法器、动态表)

    平摊分析(摊还分析) 我们有时候会有一个算法,或者只是单纯的一系列操作,当我们需要将这一些操作计算一个平均代价,但是又不涉及概率的问题,我们就可以使用平摊分析. 就比如一个月的账单,可能每一天都是正常 ...

  7. 自然语言处理NLP——中文抽取式自动文摘(包括中文语料库处理、三种方法实现自动文摘、Rouge评价方法对自动文摘进行打分)

    利用三种方法实现抽取式自动摘要,并给摘要结果打分(一.textrank 二.word2vec+textrank 三.MMR 四.Rouge评测) 具体代码我上传到了Github上,其中有45篇小论文( ...

  8. 计算两个数平均值的三种方法

    第一种方法: 思路:两数相加求和再除2 代码 int a=10;int b=20;int avg=0;avg=(a+b)/2;//平局值//或者avg=(a+b)>>1://右移表示除2, ...

  9. java数据输入的步骤_Java学习日志1.4 Scanner 数据输入的三种方法

    Scanner sc = new Scanner(System.in); /注意in 是InputStream的缩写,是字节输入流的意思. 整句话的含义就是: new 一个对象,接受从键盘输入的数据, ...

最新文章

  1. Photometric Stereo 初體驗
  2. oracle数据库dba密码,Oracle数据库的找回DBA账户的密码
  3. 为啥八位的计算机可以用补码表示-128
  4. dynamodb java_使用Java扫描DynamoDB项目
  5. matlab max函数_从零开始的matlab学习笔记——(14)一些有用的函数(上):最值,平均数,中位数...
  6. oracle财务软件报表,甲骨文推出Oracle 财务管理分析软件
  7. KaTeX parse error: No such environment: align
  8. ArchLinux On Win10
  9. linux打开txt文件命令_Linux文件操作,这些命令可以搞定
  10. win7计算机文件移动硬盘,Win7系统下给移动硬盘分区方法是什么
  11. excel删除奇数行或者偶数行
  12. 关于回溯模型的两种解空间树
  13. vue NavigationDuplicated: Avoided redundant navigation to current location
  14. XCode 6.x 越狱 真机调试
  15. 【计算机视觉】Lecture 11:LoG和DoG滤波算子
  16. oppo服务器暂时不可用,oppo手机网络连接不可用是怎么回事
  17. 虚心接受别人善意的批评
  18. vscode 结束_VSCode C++ 运行结束马上退出, 窗口一闪而过解决办法, 不修改代码
  19. 小学老师工资多少一个月_你知道小学老师一个月工资多少吗?揭开真实收入,让你想不到...
  20. 【Sciter】Sciter 结合 Preact 封装 图片查看器总结

热门文章

  1. Microsoft Visual Studio C++2022 Windows 11 SDK环境
  2. 已解决[W:11:55:47.235 NotebookApp] Cannot bind to localhostusing 127.0:0.1 as defaultip[winError 10055]
  3. 修改vscode终端字体
  4. 2D,2.5D,3D封装结构
  5. 利用python进行保险数据分析及可视化
  6. Docker:网络模式详解
  7. 苹果新专利:用AR眼镜来控制iPhone屏幕输出,保护隐私
  8. Lenovo启天M437 黑苹果efi引导文件
  9. 国内10大技术网站,你最爱和哪个玩耍?
  10. 08_python_练习题——乘法表