Pythonのお勉強 Part 27at TECH
Pythonのお勉強 Part 27 - 暇つぶし2ch259:デフォルトの名無しさん
08/06/24 08:17:13
>>256
書いてみたが、リンクリストかQueueの方がスマートかも。
def kiyaku_bunsu(n):
if n == 1:
return [0, n], [1, n]
else:
a, b = kiyaku_bunsu(n - 1)
while a[0] != b[0]:
a, b = rotates(a, b)
if b[0] + b[-1] == n:
apps(a,b)
return rotates(a, b)

def rotates(*x):
return map(lambda a:a[1:]+[a[0]], x)

def apps(*x):
return map(lambda a:a.append(a[0] + a[-1]), x)

n = input("denominator:")
for i in zip(*kiyaku_bunsu(n)):
print "%d/%d %f\n" % (i[0], i[1], 1.0*i[0]/i[1]),


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch