我正在尝试在 python 函数中制作一个十进制数三元数。我的想法是一直除法直到商和余数相等,但我似乎无法让它发挥作用。这是我的代码:
l = 1
#problem code
def ternary(n):
e = n/3
q = n%3
e= n/3
q= e%3
print q
r = input("What number should I convert?: ")
k = bin(r)
v = hex(r)
i = oct(r)
print k+"(Binary)"
print v+"(Hex)"
print i+"(Octals)"
ternary(r)
l+=1
# Variables:
#l,r,k,v,i
#n,q,e
原文由 Sidsy 发布,翻译遵循 CC BY-SA 4.0 许可协议
是的,类似的东西。本质上,您想要继续除以 3,然后收集余数。然后余数构成最终数字。在 Python 中,可以使用
divmod
来划分和收集余数。例子: