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

0 голосов
45 просмотров

Скажите пожалуйста почему не работает код 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; }


Информатика (24 баллов) | 45 просмотров
Дан 1 ответ
0 голосов

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

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

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

}

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

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

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

(3.4k баллов)