.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; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д