Пару дней искал помощи, но не думаю, что есть какие-либо ответы на мой вопрос.Я уверен, что это просто, но я не смог заставить его работать.
Я пытаюсь создать функцию для преобразования дроби в двоичное представление.Я основал это на этой работе здесь: Как преобразовать дробь в двоичную?
def fraction_to_binary(p,q):
binlist = []
n = 1
while p >0:
binlist.append(p*2//q)
if p*2//q == 0:
p *=2
n +=1
else:
p = p - (p*2//q)*2**n
n +=1
return binlist
Для моего примера я пытаюсь преобразовать 11/64 в двоичную.Мой результат:
fraction_to_binary(11,64)
[0, 0, 1, 1, 0, 1]
Фактический ответ [0, 0, 1, 0, 1, 1]
, поэтому я думаю, что я близок.