You can do it like this:
max(binario.split('1'), key=len)
This way I create a array
separating by 1, then use the function max
to catch the biggest len
, resulting in the largest sequence of zeroes.
Using your own code:
import collections
num = int(input('Digite um número inteiro: ')) #Inputar número inteiro
binario = bin(num)[2:] #Cortar o 0b
sequence = binario
collection = collections.Counter(sequence)
print('O número binário de {} é {}'.format(num,binario))
print('A sequência que mais temos é {}'.format(collection.most_common(2)))
print('A maior sequência de 0 é {}'.format(max(binario.split('1'), key=len)))
Upshot:
Digite um número inteiro: 200
O número binário de 200 é 11001000
A sequência que mais temos é [('0', 5), ('1', 3)]
A maior sequência de 0 é 000
Update
A new way to respond to what was requested in the comments.
To show the most number of digits 0 repeated, put the function len
, so he takes the number of digits from the string
.
len(max(binario.split('1'), key=len)))
Using your own code:
import collections
num = int(input('Digite um número inteiro: ')) #Inputar número inteiro
binario = bin(num)[2:] #Cortar o 0b
sequence = binario
collection = collections.Counter(sequence)
print('O número binário de {} é {}'.format(num,binario))
print('A sequência que mais temos é {}'.format(collection.most_common(2)))
print('A maior sequência de 0 é {}'.format(len(max(binario.split('1'), key=len))))
Upshot:
Digite um número inteiro: 200
O número binário de 200 é 11001000
A sequência que mais temos é [('0', 5), ('1', 3)]
A maior sequência de 0 é 3
Have you tried anything? What was the result?
– Woss