Задать вопрос
1 августа, 02:14

Надо найти минимальное положительное трёхзначное число, которое не оканчивается на 4. Выводит всегда "NO". Где ошибка?

#include

using namespace std;

#define N 5

int main ()

{

long a[N];

long i, j, k, min;

for (i=0; i
cin >> a[i];

min = 10000;

if (a[i] > 99 && a[i] 0 && a[i] % 10! = 4 && a[i] < min) {

min = a[i];

cout << min << endl;

}

else

cout << "NO" << endl;

}

+3
Ответы (1)
  1. 1 августа, 03:00
    0
    Если вопрос еще актуален.

    Нужно открыть цикл снова сразу после строки

    min = 10000;

    Вывод результата нужно вынести за пределы цикла, т. к. пока цикл не проверил все числа массива, результат не получен!

    Если числа подходящего под условие не найдено, то переменная min как была равна 10000, так и останется равно этому значению, так что по окончанию цикла можно просто проверить, если min=10000, то результат отрицательный, и вывести NO, иначе вывести значение переменной min.

    ...

    min = 10000;

    for (i=0; i
    if (a[i] > 99 && a[i] 0 && a[i] % 10! = 4 && a[i] < min)

    {min = a[i]; }

    if (min=10000) { cout << "NO" << end; }

    else cout << min << end;
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Надо найти минимальное положительное трёхзначное число, которое не оканчивается на 4. Выводит всегда "NO". Где ошибка? #include using ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы