def div(num, den):
s = str(num); o = ""
x = 0; l = len(s)
f = 0; t = []
while (x < l):
d = int(s[x]); p = o
while (d < den):
if ((x + 1) < l):
d = ((d * 10) + int(s[x + 1]))
x += 1
else:
if (p == ""):
p += "0"
if (not "." in p):
p += "."
f = len(p)
d = (d * 10)
if (d < den):
p += "0"
i = (d / den)
r = (i * den)
if (f > 0):
if (d in t):
p = o[f+t.index(d):]
break
else:
t.append(d)
o = (p + str(i)); p = ""
if (r != d):
s = str(d - r)
x = 0; l = len(s)
else:
x += 1
if (p == ""):
p = "0"
print(str(num) + " / " + str(den) + " = " + o + " (" + p + ") ")
div(2, 4)
div(7, 22)
div(1, 999)
div(22, 7)
div(1, 3)
2 / 4 = 0.5 (0)
7 / 22 = 0.318 (18)
1 / 999 = 0.001 (001)
22 / 7 = 3.142857 (142857)
1 / 3 = 0.3 (3)
Like this:
Like Loading...
Related