Ниже приведен мой код для преобразования числа в двоичное с использованием стеков, записанных в Python3. Всякий раз, когда я запускаю его, None
выводится в качестве вывода. Что может быть причиной этого? Заранее спасибо.
class Stack():
def __init__(self):
self.stack = []
self.top = -1
def push(self, val):
self.stack.append(val)
self.top += 1
def pop(self):
if self.top == -1:
print('Underflow')
else:
del self.stack[self.top]
self.top -= 1
def empty(self):
return self.stack == []
def peek(self):
return self.top
def display(self):
return self.stack
def binary(n):
b = Stack()
while n > 0:
r = n%2
b.push(r)
n = n//2
bn = ''
while not b.empty():
bn += str(b.pop())
return bn
print(binary(242))