Pages

July 10, 2012

久しぶりに数学的なプログラミング><

「for文を使って,s=1+3+5+...+99の和を計算、表示するプログラミングを作りましょう」

というネタがTwitterで流れてきたのでPythonでやってみました。

#!/usr/bin/env python
reduce(lambda a,b: a+b, [i for i in range(1,100) if i%2==1])
sum([i for i in range(1,100) if i%2==1])

男らしく()ワンライナーで書いてみました。

というかいくら奇数の足し算とはいえ、数学的なプログラミングを最近全くしていないせいか、最初???ってなりました。

そういえば自分の作ったプログラムって数学的な要素全然ない気がします…

コードは2つの方法があります。短く書きたいならsum()を使うのがいいと思います。

僕はどうなってるのか気になるタイプなのでreduce()使ったヤツのほうが好きですね。

といいますか、Pythonは気持ち悪いくらい便利な関数が標準で備わってます><

0 コメント:

Post a Comment