Задача 2

Вычислить среднее геометрическое непустой последовательности вещественных чисел.

В данной задаче считается, что в последовательности есть хотя бы одно число, a также все числа нетрицательны.

Ответ: одно число - искомое среднее геометрическое.

Исходные данные (последовательность чисел) задаются в файле input.txt, при этом количество чисел в последовательности считается заранее неизвестным. Ответ надо вывести в указанной форме в файл output.txt.

Программа должна решать указанную задачу, последовательно читая числа из файла и вычисляя требуемый результат за один просмотр данной последовательности. При реализации алгоритма нельзя создавать ни в функции main, ни в других функциях рабочие массивы, длина которых явно или неявно зависела бы от длины исходных данных.

Программа должна содержать отдельную функцию для обработки последовательности, получающую в качестве параметров указатель на предварительно открытый файл с данными, а также, возможно, другие параметры, необходимые для решения конкретной задачи; при этом открытие и закрытие файла данных, а также вывод результата должен происходить вне этой функции, например, это можно делать в функции main.

Если программа не может корректно решить задачу (файлы не открылись, при чтении возникли ошибки, количество чисел в последовательности не позволяет корректно найти результат и т.п.), то результат не вычисляется, а функция main должна возвратить значение -1. При успешном решении задачи функция main должна возвратить 0.