Предмет: Информатика, автор: Аноним

Напишите программу на c++:
Напишите программу, которая находит в массиве минимальный и максимальный из чётных положительных элементов.

Входные данные
Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. Гарантируется, что 0 < N ≤ 10000 .
Выходные данные
Программа должна вывести в одной строке минимальный и максимальный из чётных положительных элементов массива, разделив их пробелом. Если в массиве нет чётных положительных элементов, программа должна вывести два числа -1.

Ответы

Автор ответа: restIess
0

#include <iostream>

using namespace std;

int main() {

bool Flag = false;

int N, max, min;

cin >> N;

int* array = new int[N];

for (int i = 0; i < N; i++) {

 cin >> array[i];

 if (array[i] % 2 == 0 && array[i] > 0) {

  max = array[i];

  min = array[i];

  Flag = true;

 }

}

if (Flag == false) {

 cout << -1 << " " << -1;

}

else {

 for (int i = 0; i < N; i++) {

  if (array[i] > max && array[i] % 2 == 0 && array[i] > 0)

   max = array[i];

  else if (array[i] < min && array[i] % 2 == 0 && array[i] > 0)

   min = array[i];

 }

 cout << min << " " << max;

}

delete[] array;

return 0;

}


restIess: Если вводятся одинаковые четные, то они являются и минимумом и максимумом
restIess: В первой строке я ввёл 10, во второй числа от 1 до 10, вывод: 2 10
restIess: :)
restIess: смотря че там
Похожие вопросы
Предмет: Математика, автор: zhumashev2000
Предмет: Алгебра, автор: karinakhadgieva