我必须编写一个递归函数,它在10个基数中得到一个数字(n)并将其转换为给定的数字基数(k)并返回一个列表,其中的组件是最终的数字,例如f(5, 3)必须得到[1, 2]基数3中的5是12,还是f(22, 3)必须结果[2, 1, 1].
这是我试过的代码:
def cb(n, k):
b = []
if n == 0:
b.append(0)
if n < k:
b.append(n)
if n == k:
b.append(10)
else:
a = n // k
b.append(n - ((n // k) * k))
if a < k:
b.append(a)
else:
cb(a, k)
return b
print(cb(22, 3))
Run Code Online (Sandbox Code Playgroud)
实际上我对它有很多想法,但由于我不太擅长编写代码,所以我不能再进一步了.感谢您对我的代码的帮助和修改.
python ×1