Как вывести наибольшее число, кратное х. А то у меня выводит последнее число в матрице кратное х
#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;
Вдруг все числа будут отрицательны?