Другие языки программирования и технологии

Задача на C++ по одномерным (статическим) массивам, помогите сделать, пожалуйста, очень надо на завтра

Для одномерного массива, состоящего из n значений (n не больше 20),
предусмотреть ввод значений массива с клавиатуры и используя рандомное
заполнение; предусмотреть вывод сообщений в случае невозможности выполнения
поставленного задания.
Удалить из введенного одномерного массива все положительные элементы,
не вводя нового массива.
#include < iostream >
#include < windows.h >
using namespace std;

void enter_item(int *arr, int size)
{
cout << "Укажите " << size << " елементов масиыва через пробел:" << endl;
for (int i = 0; i < size; i++)
{
cin >> arr[i];
}
}
void fill_array(int *arr, int size)
{
for (int i = 0; i < size; i++)
{
arr[i] = rand() % (10) - (5);
}
}
void print_array(int *arr, int size)
{
for (int i = 0; i < size; i++)
{
cout << arr[i] << " ";
}
cout << endl;
}
void new_array(int *arr, int &size)
{
int new_size = 0;
for (int i = 0; i < size; i++)
{
if (arr[i] < 0)
{
new_size++;
}
}
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size - 1; j++)
{
if (arr[j] > arr[j + 1])
{
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
size = new_size;
}
int main()
{
SetConsoleOutputCP(1251);
int size;
cout << "Укажите размер-> ";
cin >> size;
int *arr = new int [size] {};
cout << "Выберете заполнение: \n1)Рандомное 2)Вручную" << endl;
cout << "Выберете 1 или 2 -> ";
int n;
cin >> n;
if(n==1)
{
fill_array(arr, size);
}
else
{
enter_item(arr, size);
}
print_array(arr, size);
new_array(arr, size);
cout << "Новый масив:";
print_array(arr, size);
delete[]arr;
system("pause");
}
Алексей Биктаиров
Алексей Биктаиров
221
Лучший ответ