Помогите с матрицей С

Задание заключается в том, что задана матрица чисел размера NxM. Нужно определить количество чисел, которые больше соседних по вертикали. Не могу понять как сделать так, чтобы программа не считала элементы матрицы, у которых по одному соседу.

#include <stdio.h>

int main()
{
    const int N = 5, M = 5;
    int arr[N][M];
    int i, j, count = 0;

    printf("Enter %d array elements: \n", N * M);
    for (i = 0; i < N; i++)
        for (j = 0; j < M; j++)
            scanf_s("%d", &arr[i][j]);


    for (i = 0; i < N; i++) {
        for (j = 0; j < M; j++)
            printf("%4d", arr[i][j]);
        printf("\n");
    }

    for (i = 0; i < N; i++)
        for (j = 0; j < M; j++)
            if (arr[i][j] > arr[i + 1][j] & arr[i][j] > arr[i - 1][j])
            {
                count += 1;
            }
        
    printf("\nAmount of grater numbers: %d", count);

    return 0;

}

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


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

Автор решения: Harry

Просто замените цикл в проверке

    for (i = 0; i < N; i++)

на

    for (i = 1; j < N-1; i++)

Вот и все, крайние (нулевой и N-1-ый) элементы просматриваться не будут.

→ Ссылка