Реферат: Помехоустойчивое кодирование, распознавание символов
if c = 0 {если в начале...}
then
dec(range); {... уменьшаем текущий разряд}
inc(c); {увеличиваем внутренний счетчик}
if (z[c] = z[c + 1]) and (c <= m)
{если два кода равны...}
then
begin {...то цикл деления}
fl := false; {флаг дальнейшего деления}
i := c; {"верхняя" граница}
j := c + 1; {"нижняя" граница}
if (z[j] = z[j + 1]) or (j + 1 < m)
{если ещё есть равные...}
then
fl := true; {...то ещё делим}
while fl do {пока можно делить...}
begin
inc(j); {...увеличиваем нижнюю границу}
if (z[j] <> z[j - 1]) or (j > m - 1) then
fl := false
end;
if((j - i) > 1) and (j < m)
{если > 2 элементов...}
then
dec(j); {...корректируем нижнюю границу}
s := numb((p[i] + p[j])/2); {делим}
if p[i] = p[j] {если два элемента...}
then
s := i; {середину - на "верхний"}