//Priimami parametrai - vektorius //Grąžinamas rezultatas - vektorius ir vėliava (flag), ar vektorius buvo pakeistas // //Funkcija paklausia vartotojo, ar jis norės pakeisti vektoriuje klaidas. Jei vartotojas nori, //tuomet klaidos pakeičiamos ir grąžinamas pakeistas vektorius su vėliava, kad vektorius buvo keistas. //Jei vartotojas nenori, grąžinamas paduotas vektorius ir vėliava, kad vektorius nekeistas. public static Queue <int> ChangeErrors(Queue <int> vector, out bool changed) { Console.WriteLine("Do you want to change made errors?" + Environment.NewLine + "1 - Yes" + Environment.NewLine + "2 - No"); var input = Console.ReadLine(); var choice = int.Parse(input); if (choice == 2) { changed = false; return(vector); } else { changed = true; Console.Write("Enter at what positions bits should be changed (separate by semicolon)" + Environment.NewLine + "Example to change bits at 1, 5 and 6th positions: 1;5;6" + Environment.NewLine); input = Console.ReadLine(); var errorPositionStringList = input.Split(';'); var errorPositionList = errorPositionStringList.Select(positionString => int.Parse(positionString)).ToList(); var vectorAsList = ErrorController.ChangeErrors(vector.ToList(), errorPositionList); var changedVector = ConvertingHelper.ConvertListToQueue(vectorAsList); return(changedVector); } }
//Nieko nepriima //Grąžinamas rezultatas - vektorius // //Funkcija paprašo vartotojo įvesti vektorių ir grąžina jį kaip bitų eilę public static Queue <int> InputVector() { Console.WriteLine("Input the vector (made of 0s and 1s) to encode and press enter:" + Environment.NewLine + "Example: 1010"); var input = Console.ReadLine(); var charBitArray = input.ToCharArray(); var vector = ConvertingHelper.ConvertListToQueue(charBitArray); return(vector); }
//Nieko nepriima //Grąžinamas rezultatas - vektorius // //Funkcija paprašo vartotojo įvesti tekstą, jį paverčia į bitų eilę ir grąžina public static Queue <int> InputText() { Console.WriteLine("Input the text to encode and press enter."); var input = Console.ReadLine(); var sb = new StringBuilder(); foreach (var c in input) { sb.Append(Convert.ToString(c, 2).PadLeft(8, '0')); } var bitCharArray = sb.ToString().ToCharArray(); var preparedVector = ConvertingHelper.ConvertListToQueue(bitCharArray); return(preparedVector); }