.NET 4.x Как вывести из массива? - C#

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

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

Есть ли возможность вывести два случайных значений из массива? этот код выводит все значения сразу в разброс и без повторений. И как сделать чтоб следующие значения выводились по нажатию кнопки? я нуб
List<string> myArr = new List<string>
            {
             \\ из этого массива 
            };

            Random rand = new Random();
 
            List<string> arr = new List<string>();
 
            for (int i = myArr.Count; i > 0; i--)
            {
                int flag = rand.Next(myArr.Count);
                arr.Add(myArr[flag]);
                myArr.RemoveAt(flag);
 
            }

            foreach (string s in arr)

                 textBox1.Text += "\n" + s + Environment.NewLine;

Решение задачи: «.NET 4.x Как вывести из массива?»

textual
Листинг программы
static Random random = new Random();
 
static Tuple<string, string> GetRandomPairFrom(List<string> source)
{
    if (source.Count < 2)
        throw new ArgumentException("Not enough elements", nameof(source));
 
    int rFirstIndex = random.Next(0, source.Count);
    var rFirst = source[rFirstIndex];
 
    //swap to avoid duplicates in result
    var temp = source[rFirstIndex];
    source[rFirstIndex] = source[source.Count - 1];
    source[source.Count - 1] = temp;
 
    int rSecondIndex = random.Next(0, source.Count - 1);
    var rSecond = source[rSecondIndex];
 
    Tuple<string, string> result = new Tuple<string, string>(rFirst, rSecond);
    return result;
}

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


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

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

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