Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Uncategorized category for Repeating Decimals by TovarischZhukov
def convert(num, den):
buff=""
if num>=den:
val=num/den
ret=str(val)
num=num-val*den
else:
ret="0"
ret+="."
while 1:
ost=num*10%den
k=str(num*10/den)
if ost==0: ret+="".join(buff)+(k if k!="0" else ""); break
else:
pos=-1
if len(buff)>1:
pos=buff.find(buff[-2]+buff[-1]+k)
if pos!=-1:
ret+="".join(buff[:pos])+"("+"".join(buff[pos:-2])+")"
break
else:
buff+=k
num=ost
return ret
Feb. 19, 2016