If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Find the sum of all the multiples of 3 or 5 below 1000.
http://projecteuler.net/problem=1
最近、私はProject Eulerに取り組んでいる。
言語はSage Mathと呼ばれる数式処理システムを用いている。
ならば楽勝かと言われると使っている人が人なのでそうでもないのが実情である。
さて、記念すべき第一問目は1000以下の3または5の倍数である数の和を求める問題。
早速ソースを載せてみることにする。
----
#Problem_001
print sum([x for x in xrange(1,1000) if (x % 3 == 0) or (x % 5 ==0) ])
----
これはSageではなくPythonである。
Sage は様々な数学関係のソフトをPythonでつないだもの、とも言えるのでPythonのみで書けるときはそれで十分である。