Форум сайта python.su
Корреляционный код
Разновидностью кода с повторением является корреляционный код или код с удвоением элементов, который характеризуется введением дополнительных символов для каждого разряда информационной части. Если в разряде информационной части стоит 0, то в корреляционном коде этот разряд записывается символами 01, если 1 – символами 10. Например, комбинация 10101 будет представлена в виде 1001100110. Показатель искажения кода – появление в «парных» элементах сочетаний вида 00 или 11.
Характеристики корреляционного кода полностью совпадают с характеристиками кода с простым повторением. Различие в помехоустойчивости кодированных сигналов обнаруживается лишь для несимметричных каналов, у которых вероятности переходов и различны, а также для каналов, имеющих различные вероятности искажения соседних символов по сравнению с другими возможными искажениями.
Офлайн
a = input("-> ") b = "" for i in a: b += i + "10"[i == "1"] print(b)
Офлайн
terabaytМожете помочь еще с этим?
Особой разновидностью кода с повторением служит инверсный код (код Бауэра). Отличие его от кода с простым повторением заключается в том, что в тех случаях, когда исходная комбинация содержит четное число единиц, вторая комбинация в точности воспроизводит исходную. Если же исходная комбинация содержит нечетное число единиц, повторение происходит в инвертированном виде. Например, комбинации 01100 и 10110 инверсным кодом представляются как 0110001100 и 1011001001.
Офлайн
a = input("-> ") if a.count("1") % 2: for i in a: a += "10"[i == "1"] else: a *= 2 print(a)
Офлайн