I am having trouble with a small bit of code, which in a random size array, with random number pairs, except one which has no pair. 

I need to find that number which has no pair. 

arLength is the length of the array.
but i am having trouble actually matching the pairs, and finding the one which has no pair..

```
 for (int i = 0; i <= arLength; i++)
        { // go through the array one by one..
            var number = nArray[i];

            // now search through the array for a match.
            for (int e = 0; e <= arLength; e++)
            {
                if (e != i)
                {

                }
            }
        }

```

I have also tried this : 

```
var findValue = nArray.Distinct();

```

I have searched around, but so far, i haven't been able to find a method for this. 

This code is what generates the array, but this question isn't about this part of the code, only for clarity.

```
Random num = new Random();
            int check = CheckIfOdd(num.Next(1, 1000000));
            int counter = 1;

            while (check <= 0)
            {
                if (check % 2 == 0)
                {
                    check = CheckIfOdd(num.Next(1, 1000000)); ;
                }
                counter++;
            }
            int[] nArray = new int[check];
            int arLength = 0;
            //generate arrays with pairs of numbers, and one number which does not pair.
            for (int i = 0; i < check; i++)
            {
                arLength = nArray.Length;

                if (arLength == i + 1) 
                {
                    nArray[i] = i + 1;
                }
                else
                {
                    nArray[i] = i;
                    nArray[i + 1] = i;
                }
                i++;
            }

```