Untitled
string[] names = new string[] { "name1", "name2", "name3", "name4", "name5", }; while (true) { Console.WriteLine("Добро пожаловать в Рандомайзер!"); Console.WriteLine("###############################"); Console.WriteLine("1. Показать все имена"); Console.WriteLine("2. Добавить имена"); Console.WriteLine("3. Получить случайные имена"); Console.WriteLine("4. Получить случайные команды"); int inputComand = Convert.ToInt32(Console.ReadLine()); switch (inputComand) { case 1: ShowNames(); break; case 2: AddNames(); break; case 3: GetRandomNames(); break; case 4: GetRandomCommands(); break; } void ShowNames() { foreach (string name in names) { Console.WriteLine(name); } } void AddNames() { Console.WriteLine("Введите имена"); string newNames = Console.ReadLine(); string[] splitNames = newNames.Split(','); foreach (string name in splitNames) { Array.Resize(ref names, names.Length + 1); names[names.Length - 1] = name; } Console.WriteLine("Имена добавлены"); } void GetRandomNames() { Console.WriteLine("Случайные имена:"); Random random = new Random(); int maxIndex = names.Length; int randomIndex = random.Next(0, maxIndex); Console.WriteLine(names[randomIndex]); } void GetRandomCommands() { Console.WriteLine("Введите количество участников в одной команде:"); int teamSize = Convert.ToInt32(Console.ReadLine()); if (teamSize <= 0 || teamSize > names.Length) { Console.WriteLine("Некорректное количество участников в команде."); return; } Random random = new Random(); var shuffledNames = names.OrderBy(x => random.Next()).ToArray(); int teamCount = (int)Math.Ceiling((double)names.Length / teamSize); Console.WriteLine($"Количество участников в команде: {teamSize}"); for (int i = 0; i < teamCount; i++) { Console.WriteLine($"Команда {i + 1}: {string.Join(", ", shuffledNames.Skip(i * teamSize).Take(teamSize))}"); } } }
Leave a Comment