foo
関数をfoo2
(非再帰)に置き換えたいのですが、foo2
正しく動作しません。何が問題なのfoo2
ですか?
def foo(n, k=0,s=0):
if k < n:
for i in xrange(k==0,10):
foo(n, k+1, 10*s + i)
else:
print s,
def foo2(n):
s=0
for k in xrange(n):
st = s
for i in xrange(k==0, 10):
st = 10* st + i
print st
foo(3)
foo2(3)
更新しました
に置き換える10*s + i
とs + i**3
、どのように書き換えることができますか?