Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.09.2014, 21:16   #1
SKyzZz
Пользователь
 
Регистрация: 14.02.2011
Сообщений: 43
Сообщение Алгоритм Плейфера

Суть вопроса:

Код:
 public void button6_Click(object sender, EventArgs e)  // Генерация энкрипт-матрицы 5 на 5
        {
            string text2 = "";
            text2 = Convert.ToString(textBox3.Text).ToUpper();
            string[] alpha = {text2 +"abcdefghijklmnopqrstuvwxyz"};
            string one = string.Join(null, alpha);
            var List = new List<string> {one};
            var newList = new List<string>(List.Distinct()); // Удаление букв из алфавита, которые есть в ключевом слове
            string[,] arr = new string[5, 5];
            List<string[,]> lst = new List<string[,]>();
            lst.Add(arr);
            encriptionMatrix = arr;
            int count = 0;
            foreach (string s in encriptionMatrix)
            {
                count++;
                if (count != 6)
                {
                    richTextBox3.Text += s + "\t";
                }
                if (count == 6)
                {
                    richTextBox3.Text += s + "\t\n";
                    count = 0;
                }
            }

        }
Ввожу с клавы ключ, склеиваю его с алфавитом, удаляю повторяющиеся символы в алфавите (которые содержаться в ключе) переобразую лист в матрицу 5 на 5 вывожу ее на экран...не работает, может, кто поможет, как правильно реализовать это...
SKyzZz вне форума Ответить с цитированием
Старый 18.09.2014, 09:15   #2
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию

Я конечно все понимаю, но у тебя arr пустой..
coNsept вне форума Ответить с цитированием
Старый 18.09.2014, 15:43   #3
SKyzZz
Пользователь
 
Регистрация: 14.02.2011
Сообщений: 43
По умолчанию Вот готовый код, но, как теперь матрицу получить 5 на 5

Код:
public void button6_Click_1(object sender, EventArgs e)
        {
            string text2 = Convert.ToString(textBox3.Text);
            string alpha = "abcdefghiklmnopqrstuvwxyz";
            string encription = text2 + alpha;
 
            string[] letters = encription.Select(c => c.ToString()).Distinct().ToArray();
 
            string result = string.Join("", letters);
 
            
 
            richTextBox3.Text += result + "\t"; 
 
            int count = 0;
            foreach (string s in encriptionMatrix)
            {
                count++;
                if (count != 5)
                {
                    richTextBox3.Text += s + "\t";
                }
                if (count == 5)
                {
                    richTextBox3.Text += s + "\t\n";
                    count = 0;
                }
            }
        }
SKyzZz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходима программа шифрования на C++ методом плейфера Heecn Помощь студентам 1 17.01.2013 23:45
Программа шифрования на C++ методом плейфера Heecn Помощь студентам 0 17.01.2013 19:40
Разработайте алгоритм методом пошаговой детализации и программу, реализующую этот алгоритм iamhated Помощь студентам 1 14.01.2012 16:22
Реализация шифра Плейфера в Delphi ALUKARD2011 Помощь студентам 3 14.10.2011 15:56
Шифр Плейфера Kadett Свободное общение 5 11.08.2010 14:22