解法一:循环累加

将输入的数字N循环逐次减1,定义一个变量sum将每次减1的结果累加,输出sum就是所求结果#include

using namespace std;

int main() {

int N,sum = 0;

cin >> N;

for (int i = 1; i <= N; ++i) {

sum += i;

}

cout <

return 0;

}

解法二:高斯的加法

假如给定的N=10,则这种算法是1+10、2+9、3+8、4+7、5+6,然后会发现,前面这几个加法算式的结果都是11,如下图所示

这个时候,只需要11*5,就可以得出结果。11*5不是固定值,是根据N得来的,所以我们得出sum = (1+N)*N/2。但是这里要注意,假如N是奇数,如果纯粹按照公式,我们会忽略掉最中间的值,所以要特殊处理一下,sum要加上(N/2)+1才是正确结果。#include

using namespace std;

int main() {

int N,sum = 0,ans;

cin >> N;

ans = 1 + N;

sum = N / 2 * ans;

if (N % 2 != 0) sum += (N / 2 + 1);//判断N的奇偶性

cout <

return 0;

}

解法三:等差数列求和公式

还是高斯,他老人家总结出了一条等差数列求和公式:

公式描述:公式中首项为a1,末项为an,项数为n,公差为d,前n项和为Sn。

根据题意,再套用公式,在本题中我们可以得出首项为1,末项为N,公差为1,有了公式就很好写代码了,这就是数学的魅力#include

using namespace std;

int main() {

int N;

cin >> N;

int sum = N * 1 + (N * (N - 1)) / 2 * 1;

cout <

return 0;

}

c语言1 n累加求和高斯法,N以内累加求和(高斯求和)相关推荐

  1. 【图像处理】——图像的二值化操作及阈值化操作(固定阈值法(全局阈值法——大津法OTSU和三角法TRIANGLE)和自适应阈值法(局部阈值法——均值和高斯法))

    目录 一.二值化的概念(实际上就是一个阈值化操作) 1.概念: 2.实现方法 3.常用方法 二.阈值类型 1.常见阈值类型(主要有五种类型) (1)公式描述 (2)图表描述 2.两种特殊的阈值算法(O ...

  2. 【最小二乘法 | 高斯法】

    最小二乘法在三坐标测量时常常被提起,那什么是最小二乘法呢?它具备什么样的特点?根据标准,哪些要求必须采用最小二乘法呢?今天我们就来聊一聊这个传说中的最小二乘法. 在认识最小二乘法之前,我们必须要先认识 ...

  3. R语言按组聚合求和实战(sum a variable by group):使用aggregate函数按组聚合求和、使用tapply函数按组聚合求和、按组聚合求和(使用dplyr包)

    R语言按组聚合求和实战(sum a variable by group):使用aggregate函数按组聚合求和.使用tapply函数按组聚合求和.按组聚合求和(使用dplyr包) 目录

  4. C语言编程规范之匈牙利命名法

    匈牙利命名法      匈牙利命名法是一种编程时的命名规范.基本原则是:变量名=属性+类型+对象描述,其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分.要基于容易记忆容易理解的原则 ...

  5. 费舍尔方法 续:逆高斯法(Stouffer‘s Z-score method)

    在上一篇文章中,我们提到,用费舍尔方法做文本分类,实际上是进行一个假设检验的过程.有一种与费舍尔方法密切相关的方法,称为逆高斯法(inverse normal method),也称Stouffer's ...

  6. R语言使用colSums函数对矩阵或者数据框数据的列求和、使用rbind函数行列和向量附加到原始矩阵数据尾部

    R语言使用colSums函数对矩阵或者数据框数据的列求和.使用rbind函数行列和向量附加到原始矩阵数据尾部 目录

  7. 《数据结构、算法与应用 —— C++语言描述》学习笔记 — 回溯法

    <数据结构.算法与应用 -- C++语言描述>学习笔记 - 回溯法 一.算法思想 二.货箱装载 1.问题描述 2.回溯算法 3.实现 4.测试代码 一.算法思想 回溯法是搜索问题解的一种系 ...

  8. C语言排序算法之简单交换法排序,直接选择排序,冒泡排序

    C语言排序算法之简单交换法排序,直接选择排序,冒泡排序,最近考试要用到,网上也有很多例子,我觉得还是自己写的看得懂一些. 简单交换法排序 1 /*简单交换法排序 2 根据序列中两个记录键值的比较结果来 ...

  9. c语言 do while 素数,c语言题目:用while语句求2000以内所有质数(素数)

    c语言题目:用while语句求2000以内所有质数(素数) 关注:100  答案:3  手机版 解决时间 2021-02-26 06:59 提问者祗剩寂寞 2021-02-25 10:11 小弟初学, ...

最新文章

  1. HTML的标签描述18
  2. python批量jpg转png(顺序排列1.2.3……)、修改文件夹尺寸
  3. 【Android 插件化】基于插件化的恶意软件的加载策略分析 ( 自定义路径加载插件 | 系统路径加载插件 | 用户同意后加载插件 | 隐藏恶意插件 )
  4. OpenCV 图像平移
  5. 如何版本化你的API?--转
  6. oracle hint push_pred,hints的push_pred应用-Oracle
  7. 在visual studio code中配置python以及解决中文乱码问题
  8. Python内置函数max()高级用法
  9. 使用XPO过程中的代码优化
  10. S3cCTF-gyy-Writeup
  11. Vue 3.0 Ref-sugar 提案到底是啥,真的是自寻死路吗?
  12. [转载]ssget 用法详解 by yxp
  13. 回溯算法-数独(计算器)
  14. 下拉列表—DropDownMenu的使用解析
  15. FPGA学习杂记4——IP核简介、调用、复制和PLL IP核介绍
  16. 【聚水潭】胜算操作手册
  17. github官网连接超时解决方案(图解版,亲测成功)
  18. 微信小程序笔记(三)
  19. Mac系统下Gauge初体验
  20. spyder pyecharts不显示_微星PAG272QRZ显示器好不好用 微星PAG272QRZ显示器全面评测_显示器_硬件教程...

热门文章

  1. NPOI操作Excel常用函数
  2. 如何在线缩小jpg图片的大小
  3. V20变频器MODBUS-RTU通信和内置PID应用
  4. PHP RSA 生成公钥私钥 PSA2 加密解密
  5. 幻灯片ppt和pps的区别
  6. 测光决定曝光 了解相机测光原理和方式
  7. WD企业盘参数对照表
  8. 原生JS验证码登录界面
  9. 视频教程-WordPress网站安全搬家视频教程-PHP
  10. jieba分词和文件读写