Как удалить повторения в выводе, не прибегая к еще одному циклу?

Данный код создает 6 случайных чисел и записывает их в массив, после чего чистит его от повторений, но бывает такое, что повторений больше чем 2 и код повторно выводит это значение. Как я могу вывести повторения, как бы это смешно не звучало, без повторений?

Random num = new Random();
            int[] Values = new int[6];
            for (int i = 0; i < Values.Length; i++)
            {
                Values[i] = num.Next(10);
            }
            Array.Sort(Values);

            for (int i = 1; i < Values.Length; i++)
            {
                if(Values[i]==Values[i-1])
                {
                    Console.WriteLine(Values[i]);
                }
            }

Ответы (3 шт):

Автор решения: A K

Как я могу вывести повторения, как бы это смешно не звучало, без повторений?

Мне не нужен массив без повторений, мне как раз и нужно вывести повторения

void Main()
{
    var nums = new[] {1,2,2,3,4,5,5,5,7};
    GetDupes(nums).Dump();
}

// You can define other methods, fields, classes and namespaces here

public int[] GetDupes(int[] nums)
{
    var dict = new HashSet<int>();
    var result = new HashSet<int>();
    
    foreach (var item in nums)
    {
        if(dict.Contains(item))
            result.Add(item);
        else
            dict.Add(item);
    }
    return result.ToArray();
}

введите сюда описание изображения

→ Ссылка
Автор решения: Lono

Используя HashSet я решил следующим образом не прибегая к List и к Linq в целом

Random num = new Random();
int[] Values = new int[6];
for (int i = 0; i < Values.Length; i++)
{
    Values[i] = num.Next(10);
}

HashSet<int> povt = new HashSet<int>();

for (int i = 1; i < Values.Length; i++)
{
    if(Values[i]==Values[i-1])
    {
        povt.Add(Values[i]);
    }
}
foreach (int pov in povt)
{
    Console.WriteLine(pov);
}
→ Ссылка
Автор решения: Andrei Khotko

Как удалить повторения в выводе, не прибегая к еще одному циклу?

Если отвечать именно на этот вопрос, то код, решающий конкретную задачу автора, следующий:

Random num = new Random();
int[] Values = new int[6];
var hashSet = new HashSet<int>();

for (int i = 0; i < Values.Length; i++)
{
    Values[i] = num.Next(10);
    if (hashSet.Add(Values[i]))
    {
        Console.WriteLine(Values[i]);
    }
}
→ Ссылка