Problem 6

最初の10個の自然数について、その和の二乗と、二乗数の和は以下の通り。

1² + 2² + ... + 10² = 385
(1 + 2 + ... + 10)² = 3025

これらの数の差は 3025 - 385 = 2640 となる。

同様にして、最初の100個の自然数について和の二乗と二乗の和の差を求めよ。


プログラム
#include<stdio.h>

void main(void){
int i,sum = 0;
int waji,jiwa = 0; // waji:和の二乗、jiwa:二乗の和
printf("Q:最初の100個の自然数について和の二乗と二乗の和の差\n");
for(i=1; i<=100; i++){
sum += i; // wajiの為に合計sumを求める
jiwa += i*i; // jiwaを求める
}
waji = sum*sum; // 合計の二乗
printf("%d - %d = %d\n",waji,jiwa,waji-jiwa);
}

結果
Q:最初の100個の自然数について和の二乗と二乗の和の差
25502500 - 338350 = 25164150