Problem 006
最初の10個の自然数について, その二乗の和は,
1**2 + 2**2 + ... + 10**2 = 385
最初の10個の自然数について, その和の二乗は,
(1 + 2 + ... + 10)**2 = 3025
これらの数の差は3025 - 385 = 2640
となる.
同様にして, 最初の100個の自然数について二乗の和と和の二乗の差を求めよ.
Answer 006 (Python)
class Problem6:
LIMIT = 100
def main(self):
l = range(1, self.LIMIT + 1)
print((sum(l) ** 2) - (sum(i * i for i in l)))
if __name__ == '__main__':
p = Problem6()
p.main()
(参考) Project Euler とは
Project Euler はプログラミングで数学の問題を解くサイトです。問題は600問以上あるので、勉強に使うのも良し、楽しむのも良しです。
サイトに登録すれば、解答を submit することができ、その場であっているか判定してくれます。
また、問題だけであれば、日本語に翻訳された Wiki もあるのでそちらを見ながらやると捗ると思います。