在 Begin-End 区间实现DecToTer_int(d)
函数,其功能是计算十进制整数 d
对应的三进制表示,说明如下:
1)d
可能为正数、0
和负数;
2)不准使用 Python 提供的进制转换函数;
问题代码:
########## Begin ##########
def f (d):
if d==1:
return '1'
else:
return f(d//3)+str(d%3)
def DecToTer_int(d):
if d==0:
return '0'
if d>0:
return f(d)
if d<0:
return '-'+f(d)
########## End ##########
d = int(input()) #十进制整数
t = DecToTer_int(d) #转换成三进制
print('%s -> %s' % (d, t))
问题代码分析:
-272 -> -101002
Traceback (most recent call last): File "src/step1/student1.py", line 16, in <module> t = DecToTer_int(d) #转换成三进制 File "src/step1/student1.py", line 13, in DecToTer_int return &#