它是在Turbo C3中编译的,
有人可以解释SUM公式的工作原理吗? 因为,我在google中找不到任何解释这个公式的内容
#include<stdio.h>
#include<conio.h>
#include<dos.h>
int main()
{
int ctr, limit, sum;
clrscr();
ctr=0;
printf("limit:");
scanf("%d",&limit);
for(ctr=1;ctr<=limit;++ctr)
{
delay(100);printf("%d",ctr);
printf("n");
}
sum=(limit*(2*1+(limit-1)*1))/ 2;
printf("The Sum of all # is:",sum);
getch();
}
抱歉我的noob问题
提前致谢
答案 0 :(得分:1)
此:
sum=(limit*(2*1+(limit-1)*1))/ 2;
实际上与此公式相同:
其中Sn
表示n
个术语的总和,n
是术语的数量(limit
),a1
是AP的第一个术语和d
是常见的区别。所有这些信息都可以在Wikipedia page for arithmetic progressions。
答案 1 :(得分:1)
解释这一点的一种方法。
将所有数字写两次,一次向前翻一次,然后添加这两个系列:
1 + 2 + 3 + ... + n-2 + n-1 + n
n + n-1 + n-2 + ... + 3 + 2 + 1
-----------------------------------------
n+1 + n+1 + n+1 + ... + n+1 + n+1 + n+1
所以有n x(n + 1)&#39; s,因为你加了两个副本,把它除以2,所以公式为
sum = (n * (n+1)) / 2