Validação do bit de paridade

Os bits de paridade servem como uma verificação simples para detectar alterações em dados binários durante a transmissão. Eles funcionam assim:

  • Se os dados de uma sequência binária tiverem uma quantidade ímpar de dígitos 1, o bit de paridade será 1.
  • Se os dados de uma sequência binária tiverem uma quantidade par de dígitos 1, o bit de paridade será 0.
  • O bit de paridade é acrescentado ao final (end) da sequência binária.

Crie uma função que determine se uma sequência binária é válida de acordo com seu bit de paridade.

Exemplo explicado

validate_binary("10110010") ➞ true

# O último dígito é o bit de paridade.
# 0 é o último dígito.
# 0 indica que deve haver uma quantidade par de dígitos 1 na sequência inteira.
# Há quatro dígitos 1.
# Retorne true.

Exemplos

validate_binary("00101101") ➞ true

validate_binary("11000000") ➞ true

validate_binary("11000001") ➞ false

Notas

  • Um byte tem 8 caracteres binários. Aplique a mesma regra de paridade à sequência inteira recebida, mesmo que ela tenha outro comprimento.
  • Você pode encontrar outro desafio sobre bits de paridade neste link.