1+2+3+...+100=?

Posted 张宝的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1+2+3+...+100=?相关的知识,希望对你有一定的参考价值。

int main()
{
   // 我要计算出1+2+3+...+100的值
   int i = 0, n = 100, sum = 0;    
   for (i; i <= n; i++) {
       sum += i;
   }
   printf("%d\n", sum);
   
   // 这对于电脑很轻松,只要重复一百次循环就可以了。但是人不行,累啊。
   // 所以要有一个合理的算法。
   // 数学家高斯(九岁时)也遇到了这个问题,他很快算出答案是5050
   // 首尾对应位置上的数字相加都是101,这样的首尾数字对一共有50个,相乘就是5050!
   // 好厉害!
   sum = ((1 + n) * n) / 2;
   printf("%d\n", sum);
   
   // 对于n=100的情况,电脑少操作了99步,推导至更为普遍的情况
   // 就是1次与n次的差别!
}

以上是关于1+2+3+...+100=?的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript笔试题(js高级代码片段)

C语言100个经典算法源码片段

sublime text 3 添加代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

web代码片段