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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2013, 20:27   #1
Gameboy
Новичок
Джуниор
 
Регистрация: 17.01.2013
Сообщений: 1
По умолчанию Перебор слова, ограничить количество символов

Нужно ограничить размер строки перебора. Извиняюсь, но нет времени на поиск и решение проблем, так как сдавать контрольную завтра.
Код:
        public int ElementLevel = -1;
        public int StringLength;
        public int[] PermutationValue = new int[0];
        public char[] InputSet;
        public int PermutationCount = 0;

        public void MakeCharArray(string InputString, short Symbols)
        {
            InputSet = InputString.ToCharArray();
            Array.Resize(ref PermutationValue, InputString.Length);
            StringLength = InputString.Length;
        }

        public void Recursion(int k)
        {
            ElementLevel++;
            PermutationValue.SetValue(ElementLevel, k);

            if (ElementLevel == StringLength)
            {
                OutputPermutation(PermutationValue);
            }
            else
            {
                for (int i = 0; i < StringLength; i++)
                {
                    if (PermutationValue[i] == 0)
                    {
                        Recursion(i);
                    }
                }
            }
            ElementLevel--;
            PermutationValue.SetValue(0, k);
        }

        public void OutputPermutation(int[] value)
        {
            string password = "";
            foreach (int i in value)
            {
                password += InputSet[i - 1];
            }
            // вывод password
        }

        private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            string generate = "";
            if (CheckSymbols1.Checked) generate += "QWERTYUIOPASDFGHJKLZXCVBNM";
            if (CheckSymbols2.Checked) generate += "qwertyuiopasdfghjklzxcvbnm";
            if (CheckSymbols3.Checked) generate += "!@#$%^&*()";

            short length = 5;

            MakeCharArray(generate, length);
            Recursion(0);
        }
Gameboy вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ограничить количество строк vostok Microsoft Office Excel 7 02.01.2013 18:42
Дана строка символов, содержащая слова. Определить количество слов, последний и предпоследний символы кот RamZax Паскаль, Turbo Pascal, PascalABC.NET 2 17.06.2010 14:06
Ограничить количество клиентов SwiP Работа с сетью в Delphi 1 16.06.2010 19:17
Работа со строками.даны три слова.Одно из них имеет меньшее количество символов,чем другое.Определить и в Ashley Помощь студентам 6 01.06.2010 22:08