Курсовая работа: Двоичный циклический код Хэмминга
Роо = Рi £ v о + Рi > v о ;
Рно £ 1- Pбо - Рi £ v о ;
Рлс = Рно /(1- Роо ).
Пример:
Pбо = qn =0,999418 =0,98925490, где q=1-p=0,9994;
Рi £ v о ==+=
18*0,0006*0,98984881+153*0,00000036*0,99044307=0,01074492, где v0 =d-1=2;
Роо = Рi £ v о + Рi > v о = 0,01074492;
Рно £ 1- Pбо - Рi £ v о =1-0,98925490-0,01074492=0,00000018;
Рлс = Рно /(1- Роо )=0,00000018/(1-0,01074492)=0,00000018.
Структурная схема алгоритма расчета кода, ее описание
Описание алгоритма:
1) Начало;
2) Объявляем P = 0.0006, Pdop=0.0000002, i=0, k, Pbo, Poo, Pno, Pls, lgPls, h=0, M[61], H[], d=3;
3) Вручную меняем d (по умолчанию d=3);
4) Если d=2, то i=11, иначе переходим к шагу 7;
5) Если i<=31, тоPbo=(1-P)^i, Poo=0, Poo=(C )*(P^1)*(1-P)^(i-1),
Pno=1-Pbo-Poo, Pls=Pno/(1-Poo), lgPls=log10(Pls),
M[i-11]=(Pdop-Pls), i=i+1, переходим к шагу 5, иначе переходим к шагу 35;
6) Выводим Pbo, Poo, Pno, Pls, lgPls, переходим к шагу 5;
7) Если d=3, то i=11, иначе переходим к шагу 21;
8) Если i<=15, то Pbo=(1-P)^i, Poo=0, k=1, иначе переходим к шагу 14;
9) Выводим Pbo;
10) Если k<=2, то Poo=, иначе переходим к шагу 12;
11) k=k+1, переходим к шагу 10;
12) Pno=1-Pbo-Poo, Pls=Pno/(1-Poo), lgPls=log10(Pls),
M[i+10]=(Pdop-Pls), i=i+1;
13) Выводим Poo, Pno, Pls, lgPls, переходим к шагу 8;