Я написал программу для преобразования целого числа в двоичный код без использования bin()
. Однако при выполнении эта функция добавляет начальный ноль.Преобразование целых чисел в двоичные, необходимо удалить начальный нуль
def decimalToBinary(n):
def helper(n):
if n == 0:
return '0'
else:
if n%2 == 1:
binaryDigit = '1'
else:
binaryDigit = '0'
return helper(n//2) + binaryDigit
helper(n)
print(helper(n))
Выход:
>>> decimalToBinary(100)
01100100
Как я могу изменить это так, что, когда 100
вводится, выход 1100100
, а не 01100100
?
вы должны были использовать пустую строку в 'если п == 0: возвращение«» 'и другое 'if', чтобы распознать, когда кто-то выполняет' decimalToBinary (0) ', потому что' 0' - это только значение, которое должно начинаться с нуля. – furas