Генерация уникальных случайных чисел - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. Есть следующий код:
class Employee
    {
        public int Id { get; set; }
        public string Name { get; set; }
       
        public Employee(int id, string name)
        {
            Name = name;
            Id = id;
        }
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            List<Employee> listEmp = new List<Employee>();
            listEmp.Add(new Employee(1, "Свиридов"));
            listEmp.Add(new Employee(2, "Петров"));
            listEmp.Add(new Employee(3, "Иванов"));
 
            Random rand = new Random();
 
            for (int i = 0; i < listEmp.Count; i++)
            {
                Console.WriteLine(listEmp[rand.Next(0, listEmp.Count)].Name);
            }
 
            Console.ReadLine();
        }
    }
Подскажите, можно ли сделать так, чтобы данные фамилия так же выводились в случайном порядке, но при этом, чтобы они не повторялись?

Решение задачи: «Генерация уникальных случайных чисел»

textual
Листинг программы
var xs = new List<Employee>(listEmp);
for (int i = 0; i < listEmp.Count; i++)
{
    var n = rand.Next(0, xs.Count);
    Console.WriteLine(xs[n].Name);
    xs.RemoveAt(n);
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.583 из 5
Похожие ответы