Как исправить программу на языку C#?
sashka_amelin32, бро если делая лабораторку по простеишим массивам и ты "долго уже сижу и не могу понять в чём проблема"
то или плохо высыпаешься или плохо понимаешь что вообще делаешь.
а уж ерничать когда тебе говорят что решать такое за тебя не особо хотят) тем более не надо))
а по факту смотрите в отладчике очередность выполнения команд)if (i == mas.Length)
                        Console.WriteLine("Массив №1 прошёл проверку. 0");
отладчиком дойдите до этого места . посмотрите чему равно i и mas.Length
да и в принципе, пошагово отладчиком и увидете, где сбоит, не заходит в условие или перескакивает.
удачи в обучении)
if (mas[i] % 2 == 0 && mas[i - 1] % 2 != 0 || mas[i] % 2 != 0 && mas[i - 1] % 2 == 0) continue;
Здесь вы говорите, если текущее и предыдущие значения четное и нечетное, то проверяем следующую комбинацию за счет того, что написали команду continue
Я бы даже так написалnamespace Test
{
    class Program
    {

        public static void checkArray(int[] mas)
        {
            int check = 0;
            for (int i = 1; i < mas.Length; i++)
            {
                
                if (mas[i] % 2 == 0 && mas[i - 1] % 2 != 0 || mas[i] % 2 != 0 && mas[i - 1] % 2 == 0)
                {
                    check++;
                    if (check == (mas.Length - 1))
                        Console.WriteLine("Массив №1 прошёл проверку. 0");
                }
                else
                    Console.WriteLine("Массив №1 не прошёл проверку. Индекс-" + i);
            }
        }
        static void Main(string[] args)
        {
            int[] mas = { 1, 2, 3, 4 };
            int[] mas1 = { 1, 2, 3, 5 };
            checkArray(mas);
            checkArray(mas1);
            Console.Read();
        }
    }
}