Как вывести наибольшее число, кратное х. А то у меня выводит последнее число в матрице кратное х

#include <stdio.h>
#include <locale.h>
#include <time.h>
#include <stdlib.h>
int main()

{
    int mas[100][100], m, n, x, q=0, rand();
    srand(time(NULL));
    setlocale(LC_ALL,"");
        printf("Количество строк и столбов в матрице: ");
        scanf("%d%d", &m, &n);
        printf("Введите число: ");
        scanf("%d", &x);
        printf("Исходная матрица: \n");
            for (int i = 0; i < m; i++)
            {
                for(int j=0; j<n; j++)
                {
                    mas[i][j] = rand() %100;
                    printf("%d\t", mas[i][j]);
                    if (mas[i][j]%x == 0)
                    q = mas[i][j];
                }
    printf("\n");
        
            }
    printf("Максимальное число кратное 5: %d", q);

}

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

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

Добавьте условие для максимума:

if (mas[i][j]%x == 0 && mas[i][j] > q)

И еще, я бы инициализировал q не нулем, а

q = INT_MIN;

Вдруг все числа будут отрицательны?

→ Ссылка