Необходимо решить задачу на C++. Отчёт должен содержать готовый код программы и блок-схему алгоритма.
Алгоритм должен соответствовать требованиям структурного подхода. Необходимо организовать интерфейс ввода – вывода всех требуемых данных, организовать проверку входных данных на допустимые значения. Считать максимальное количество элементов массива неизвестным, организовать массив в динамической памяти. Предусмотреть решение задачи для разных типов элементов массива (int, float, пользовательский тип и т.п.). Алгоритм решения задачи разбить на функциональные блоки – функций. Определить функции, отличающиеся только типами формальных параметров, разработать шаблоны для этих функций с последующей параметризацией фактическими типами.