#include #include #include #include // include подключает необходимые библиотеки using namespace std; // современные компиляторы требует указания области имён int* create_array(int size) // функция для создания массива { // принимает число - размер массива, возвращает указатель на него srand(time(NULL)); // инициируем генератор случайных числе текщем временем int *array = new int[size]; // собственно создаём массив for (int i = 0; i < size; i++) // пробегаемся циклом по нему { array[i] = rand() % 50; // присваивая каждому элементу число от 0 до 50 } return array; // возвращем указатель } void print_array(int *array, int size) // функция для отображения массива { // принимает указатель на массив и его размер for (int i = 0; i < size; i++) { cout << array[i] << "\t"; // выводи разделяя элементы табом } cout << endl; // перенос строки } void reverse(int *array, int size) // функция переворачивания { // принимает указатель на массив и его размер int temp; // предопределяем временную переменную for (int i = 0; i < size/2; i++) // цикл от 0 до размер массива на 2 { temp = array[i]; // надеюсь, тут понятно array[i] = array[size-i-1]; array[size-i-1] = temp; } } void delete_item(int *array, int &size) // удаление среднего элемента { // принимает указатель на массив и указатель на размер if (size % 2 == 1) // проверяем чётное или нечётное колличество элементов { int *buff = new int[size-1]; // временный массив int j = 0; for (int i = 0; i < size; i++) // копируем наш массив во временный { if (size/2 != i) // все кроме среднего элемента { buff[j] = array[i]; j += 1; } } delete [] array; // удаляем наш массив array = new int[size-1]; // на то же место создаём новый for (int i = 0; i < size; i++) // копируем временный { array[i] = buff[i]; } delete[] buff; // удаляем временный } } int main() { int size; cout << "Enter size of array: "; // просим ввести число элементов cin >> size; // ну и считываем его в size int *array = create_array(size); print_array(array, size); reverse(array, size); print_array(array, size); delete_item(array, size); print_array(array, size); delete [] array; return 1; }