Добрый вечер, я даю вам 2 варианта вашей задачи, будут вопросы пишите в коментарии к своему вопросу У вас не указан язык реализации, мой код на С++ ВАРИАНТ 1 #include #include #include int main() { srand(time(NULL)); std::vector vec; std::cout << "Enter array size: "; int vecSize = 0; std::cin >> vecSize; vec.reserve(vecSize); int tmp = 0; int count1 = 0, count2 = 0; for (int i = 0; i < vecSize; ++i) { tmp = 1 + (rand() % 100); vec.push_back(tmp); } for (int i = 0; i < vecSize; ++i) { if (vec[i] % 2 == 0) { ++count1; } else { ++count2; } } std::cout << "Start array\n"; for (auto elem : vec) { std::cout << elem << " "; } std::cout << std::endl << "Even elements: " << count1 << std::endl; // чётные std::cout << std::endl << "Odd elements: " << count2 << std::endl; // нечётные system("pause"); return 0; } ВАРИАНТ 2 #include #include #include #include int main() { srand(time(NULL)); std::vector vec; std::cout << "Enter array size: "; int vecSize = 0; std::cin >> vecSize; vec.reserve(vecSize); int tmp = 0; int count1 = 0, count2 = 0; float sum1 = 0, sum2 = 0; for (int i = 0; i < vecSize; ++i) { tmp = 1 + (rand() % 100); vec.push_back(tmp); } for (int i = 0; i < vecSize; ++i) { if (vec[i] % 2 == 0) { ++count1; sum1 += vec[i]; } else { ++count2; sum2 += vec[i]; } } std::cout << "Start array\n"; for (auto elem : vec) { std::cout << elem << " "; } std::cout << std::endl << "Even elements: " << count1 << " , Average: "<< std::fixed << std::setprecision(1) << (sum1 / count1) << std::endl; std::cout << std::endl << "Odd elements: " << count2 << " , Average: " << std::fixed << std::setprecision(1) << (sum2 / count2) << std::endl; system("pause"); return 0; }