if (a == 4 && ScoreCombo[BufferMas] != ScoreCombo[BufferMas + 1])
//если (итерация цикла == 4 И Содержимое массива с текущим индексом != Содержимому следующего индекса массива
{
BufferMas++;
//(Это тот индекс массива к которому мы ищем соответствие) поднять индекс на один.
a = BufferMas;
//И повторить цикл, с итерации на одну больше найденного несоответствия
}
Выглядеть оно будет примерно так
Во втором случае, у нас будет 10 СОВПАДЕНИЙ. Потому что он каждую итерацию, будет возвращать значение, пока сравниваемое число не дойдёт до конца массива. А это не правильно, тут всего 4 совпадения, т.к. 5 цифр.
Ну а в первом, пропорционально меньше, 4 одинаковых числа 6 СОВПАДЕНИЙ, а должно быть 3!