Как насчет этого, в каком-то Python, подобном псевдокоду. Он делит ответ на целую часть и дробную часть. Если вы хотите преобразовать его в представление с плавающей запятой, то я не уверен, что это лучший способ сделать это.
x = <a number>
total = x
intpart = 0
fracpart = 0
% Find the integer part
while total >= 3
total = total - 3
intpart = intpart + 1
% Fraction is what remains
fracpart = total
print "%d / 3 = %d + %d/3" % (x, intpart, fracpart)
Обратите внимание, что это не будет работать для отрицательных чисел. Чтобы это исправить, нужно изменить алгоритм:
total = abs(x)
is_neg = abs(x) != x
....
if is_neg
print "%d / 3 = -(%d + %d/3)" % (x, intpart, fracpart)