public string CorrectYn() { Yn.XOR(E); if (!isCode) { Yk = new bool[k]; Array.Copy(Yn, Yk, Yk.Length); sYk = BinToWord(Yk); } return(sYk); }
public void EnterWord(bool isX /* is entering Xk*/) { string input; isCode = false; input = Console.ReadLine(); int[] arr = input .ToCharArray().Select(x => x - '0').ToArray(); isCode = IsWordBinary(arr); if (isCode) { if (isX) { Xk = arr.Select(i => Convert.ToBoolean(i)).ToArray(); } else { Yn = arr.Select(i => Convert.ToBoolean(i)).ToArray(); } } else { if (isX) { Xk = StringToBoolMas(input); } else { Yn = StringToBoolMas(input); Yn = Yn.Mul(r); for (int i = n - Xr.Length; i < n; i++) { Yn[i] = Xr[i - (n - Xr.Length)]; } } } }
public void CalcSindrom() { Sr = Yn.Div(Gx); }
public void CorrectError() { GetEVector(); Yn.XOR(E); }