The method takes 1 array and using random to shuffle the array the value of rndm1
-4
didn't change. and after the loop, it acts normal. I think the problem is in the while loop.
public static string[] Shuffle(string[] array)
{
string str1, str2, str3, str4;
Random rnd1 = new Random();
Random rnd2 = new Random();
Random rnd3 = new Random();
Random rnd4 = new Random();
int rndm1 = rnd1.Next(3);
int rndm2 = rnd2.Next(3);
int rndm3 = rnd3.Next(3);
int rndm4 = rnd4.Next(3);
while ((rndm1 != rndm2) && (rndm1 != rndm3) && (rndm1 != rndm4)
&& (rndm2 != rndm3) && (rndm2 != rndm4) && (rndm3 != rndm4))
{
rndm1 = rnd1.Next(3);
rndm2 = rnd2.Next(3);
rndm3 = rnd3.Next(3);
rndm4 = rnd4.Next(3);
}
str1 = array[0];
str2 = array[1];
str3 = array[2];
str4 = array[3];
array[rndm1] = str1;
array[rndm2] = str2;
array[rndm3] = str3;
array[rndm4] = str4;
return array;
}