Входными данными будет 1 байт т.е. 8 символов пример 10101110.
Первое что я сделал это закодил сам алгоритм
# -*- coding: koi8-r -*-
import random
start = '01011101' #ВХОД
T = [[0, 1, 3, 4, 6], [0, 2, 3, 5, 6], [1, 2, 3, 7], [4, 5, 6, 7]] #описывает в каком порядке проходить входную строку
H = ''
L = 0
for x in [0,1,2,3] : #циклы
t = 0
for i in T[x]:
t = t ^ int(start[i])
H += str(t)
L = L ^ int(H[x])
finih = H[0:2] + start[0] + H[2] + start[1:4] + H[3] + start[4:8]+str(L)
finih(random.randint(0, len(finih)-1))^1
print len(finih)
print start + ' исходная последовательность'
print H + ' информационное кодовое слово'
print finih + 'испорченная последовательность с проверочными кодами'
Далее я решил, что неплохо было бы сделать приложение графическим, добавить окошки с кнопочками. Поиск по интернету дал интересную вещь PyQT. Оказывается можно создавать визуальную часть приложения в QtDesigner смотрим тут это отличный инструмент для написания программ на С++ конечно со своими библиотеками, если у вас есть немного времени освойте его QT очень мощный инструмент (также можно писать по symbian), от этой штуки нам потребуется только дезайнер в котором будет создаваться интерфейс приложения.
Комментариев нет:
Отправить комментарий