Задача на генерацию паролей - C#
Формулировка задачи:
Нужно создать программу в которой будет
Заранее спасибо
n
- количество символов пароля хотя быa
- заглавных букв хотя быb
- строчных букв хотя быc
- цифр. В пароле не должно быть двух одинаковых идущих подряд символов. В первой строке входного файла задано целое числоn
— требуемая длина пароля. Во второй строке заданы неотрицательные целые числаa
,b
иc
— минимальное необходимое число заглавных букв, строчных букв и цифр, соответственно (a + b + c ≤ n). Пример
Ввод
8
2 5 1
Вывод
PasSw0rd
Решение задачи: «Задача на генерацию паролей»
textual
Листинг программы
class Program { static void Main() { string pass = new PassGen().GetPass(4, 4, 4); } } class PassGen { string Chars1 => new string(Enumerable.Range('a', 26).Select(i => (char)i).ToArray()); string Chars2 => Chars1.ToUpper(); string Chars3 => "0123456789"; Random rnd = new Random(); public string GetPass(int a, int b, int c) => new string(Chars1.OrderBy(_=>rnd.Next()).Take(a).Concat(Chars2.OrderBy(_=>rnd.Next()).Take(b)).Concat(Chars3.OrderBy(_=>rnd.Next()).Take(c)).OrderBy(_=>rnd.Next()).ToArray()); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д