Биты четности

Добавление бита четности – один из самых простых алгоритмов фиксации ошибок в процессе передачи двоичных данных. После пакета из восьми бит дополнительно отправляется бит четности, который и позволяет выявить искажение данных. При этом есть возможность использовать как контроль нечетности, так и контроль четности. В первом случае значение дополнительного бита делает общее количество единиц нечетным, во втором случае, соответственно, четным.

Программа должна вычислять значение бита четности для набора из восьми бит, которые вводятся с клавиатуры (контроль четности). После ввода программа должна выводить значение бита четности. Команда для конца приема комбинаций – ввод пустой строки.

Введенные данные должны проверятся на корректность, при отклонении от шаблона должно выводиться соответствующее сообщение об ошибке.

##
# Рассчитать значение бита четности для набора из 8 бит, введенного пользователем
#
# Инициируем первый ввод
line = input("Введите 8 бит информации: ")
# Продолжаем цикл, пока пользователь не введет пустую строку
while line != "":
    # Убеждаемся в правильности ввода пользователя
    if line.count("0") + line.count("1") != 8 or len(line) != 8:
        # Выводим сообщение об ошибке
        print("Это не 8 бит… Повторите ввод")
    else:
        # Считаем единицы
        ones = line.count("1")
        if ones % 2 == 0:
            print("Бит четности должен иметь значение 0")
        else:
            print("Бит четности должен иметь значение 1.")
    # Считываем следующий байт
    line = input("Введите 8 бит информации: ")
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: