.
http://stackoverflow.com/questions/5383498/shuffle-rearrange-randomly-a-liststring
Po czym pobierasz 6 pierwszych, oraz 6 kolejnych.
int[] tb = new int[] { -1, -1, -1, -1, -1, -1, -2, -2, -2, -2, -2, -3, -3, -3, -4, -4, -5, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5 };
Random rnd = new Random();
tb = tb.ToList().OrderBy(item => rnd.Next()).ToArray();
for(int i=0;i<5;++i) Console.Write(" " + tb[i]);
Console.WriteLine();
for(int i=5;i<10;++i) Console.Write(" " + tb[i]);
Console.WriteLine();
Console.ReadKey();
On ma w tych tablicach powtarzające się wartości, więc zanim zrobi na nich shuffle i wybierze 5 pierszych elementów, musi jeszcze usunąć powtórzenia chociaż znając "wspaniały" język C#, będzie trzeba do tego specjalnie napisać funkcje
Według tego co rozpisał to wartości mogą się powtarzać.
A żeby usunąć duplikaty to musi użyć złowrogiej metody Distinct()
, jak widać nie taki "wspaniały" ten C#.
some_ONE ma rację. Wartości przekazywane do tablic 5 elementowych mogą się powtarzać.
emkogniew napisał(a):
... do tablic 5 elementowych ...
- to czemu widzę 6 elementów?
Pomyłka ma być 5 elementów, ale zasada będzie ta sama. Dzięki za uwagę.
Chwilę analizowałem kod umieszczony przez _13th_Dragon i wielkie dzięki za pomoc.