(Problem 6)Sum square difference

Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 − 385 = 2640.

Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.

前十个自然数的平方和是:

12 + 22 + ... + 102 = 385

前十个自然数的和的平方是:

(1 + 2 + ... + 10)2 = 552 = 3025

所以平方和与和的平方的差是3025 − 385 = 2640.

找出前一百个自然数的平方和与和平方的差。

#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <math.h>
  
#define N 100
  
int powplus(int n, int k)
{
    int s=1;
    while(k--)
    {
       s*=n;
    }
  return s;
}
  
int sum1(int n)
{
   return  powplus((n+1)*n/2,2);
} 
  
int sum2(int n)
{
   return (n*(n+1)*(2*n+1))/6;
}
  
void solve()
{
     printf("%d\n",sum1(N));
     printf("%d\n",sum2(N));
     printf("%d\n",sum1(N)-sum2(N));
} 
  
int main()
{
  solve();
  return 0;
}
Answer:
25164150
posted @ 2014-02-11 15:22  acutus  阅读(194)  评论(0编辑  收藏  举报
TOP