• Скажите пожалуйста почему не работает код C++ должно выводить наименьший четный элемент массива, если такого нет, то выведите первый элемент. 
    #include

    using namespace std;

    int main()
    {
    cout<<"Vedit 10 elementiv:";
    const int SIZE=10;
    int arr[SIZE];
    int min;

    for (int i = 0; i < SIZE; i+=1) {
    arr[i]=rand()%60;
    }

    for (int i = 0; i < SIZE; i+=1) {
    cout << arr[i]<<' ';
    }

    for (int i = 0; i < SIZE; i+=1) {
    if (i == 0){ min = arr[i];}
    else if (arr[i] < min) min = arr[i];
    }
    cout << "Minimalnui element(chetnui): " << min << std::endl;
    return 0;
    }

Ответы 1

  • вам сначала нужно проверить, а элемент массива вообще является четным или нет

    if(arr[i] % 2 == 0) {

       if(arr[i] < min) min = arr[i];

    }

    А еще поправочка.

    объявите до цикла min, чтобы там не было ветвления.

    т.е. min = arr[0]; а уже потом цикл for

    • Автор:

      happypsae
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years