Exemplo n.º 1
0
 private void New_question_withanswer_click(object sender, RoutedEventArgs e)
 {
     Question.Clear();
     Answer1.Clear();
     Answer2.Clear();
     Answer3.Clear();
     Answer4.Clear();
 }
Exemplo n.º 2
0
        private void Decrypt_Click_1(object sender, EventArgs e)
        {
            Answer2.Clear();
            if (Rearragement2.Text != null)
            {
                int k = Int32.Parse(Integer2.Text);

                // добавление пустых строк в изначальную строку в случае, если кол-во символов не кратно к
                int n = textBox2.Text.Length / k;
                if ((double)textBox2.Text.Length / k > n)
                {
                    n++;
                    while ((double)textBox2.Text.Length / k != n)
                    {
                        textBox2.Text += " ";
                    }
                }

                int[] rearrangement = ToArray(Rearragement2.Text);

                string[] encoded = new string[n]; // массив строк по к символов из текста
                int      index   = 0;
                for (int i = 0; i < textBox2.Text.Length; i += k)
                {
                    encoded[index] = textBox2.Text.Substring(i, k);
                    index++;
                }

                for (int i = 0; i < encoded.Length; i++)
                {
                    char[] letters = new char[encoded[i].Length];
                    for (int j = 0; j < encoded[i].Length; j++)
                    {
                        letters[rearrangement[j] - 1] = encoded[i][j];
                    }
                    encoded[i] = ToString(letters);
                }

                // вывод ответа
                foreach (string str in encoded)
                {
                    Answer2.Text += str;
                }
            }
        }