Задание:
Для выполнения данного задания можно написать несколько функций. Начнем с функции, которая будет вычислять количество элементов, принадлежащих интервалу [a,b]. Это можно сделать с помощью цикла, перебирающего все элементы массива и сравнивающего их с заданными значениями a и b. Каждый раз, когда элемент попадает в заданный интервал, увеличиваем счетчик.
Далее реализуем две функции: одна будет разделять элементы массива на четные и нечетные, а вторая - изменять порядок элементов в массиве. Для этого можно использовать два вспомогательных массива: один для четных элементов, другой для нечетных. Затем можно объединить эти массивы так, чтобы сначала шли четные элементы, а затем - нечетные.
Для применения динамического выделения памяти можно использовать функцию malloc() для создания нового массива, в котором будут храниться отсортированные элементы. После того, как были найдены все четные и нечетные элементы и изменен их порядок, можно выделить память под новый массив и скопировать в него элементы в нужном порядке.
Таким образом, при выполнении задания мы будем использовать несколько функций, каждая из которых выполняет свою часть работы: вычисление количества элементов, разделение на четные и нечетные, изменение порядка элементов и выделение памяти под новый массив. Каждая функция будет выполнять определенную задачу, что позволит разделить работу на более мелкие и понятные этапы.