Программировать нужно в Delphi. И процедуру нахождения G нужно поместить в модуль, как это сделать я не знаю.
Чтобы поместить процедуру в модуль (unit), сначала создайте его. У него должно быть расширение .pas, если вдруг что-то пойдёт не так, но переименовать потом стоит согласно цели использования (лучше при первом сохранении; надо помнить, что имя модуля автоматически изменится под имя файла).
Модуль состоит из двух обязательных секций
interface и
implementation и одной необязательной
begin (в простом паскале) или либо ещё двух других необязательных
initialization и
finalization, которые можно писать и по-отдельности, и вместе, но ни в коем случае не с
begin (в Object Pascal а-ля Delphi). Секции должны указываться в приведённом порядке; их содержимое указывается после соответствующего ключевого слова. Файл модуля в общем имеет следующий вид:
{Здесь обычно большущий комментарий-описание. Не стоит им брезговать даже в учебных целях.}
unit НазваниеМодуля_ЖелательноНеБолееВосьмиСимволов;
uses
{Используемые модули, разделяемые запятыми, как в program.
Секция необязательная, но в реальных модулях всегда есть что включать};
interface // интерфейсная секция
{Здесь можно размещать только объявления глобальных переменных, констант, типов (включая и классы) и прототипы процедур.
Не следует помещать сюда то, что используется только этим модулем и не должно быть видно там, где этот модуль подключается. А подключается он через uses в том месте, где нужен (вполне логично).}
implementation // секция реализации
{Здесь нужно обязательно определить методы классов и процедуры, прототипы которых указаны выше.
Можно определить ещё много чего, невидимого извне, но не менее функционального.}
{Необязательные секции, которые здесь не нужны. О них можно досконально прочитать даже в справке.}
end.
Теперь в соответствии с описанием поместим прототип (или некоторые говорят «заголовок» — одно и то же) функции в интерфейс, а опишем её полностью в реализации, скопировав заголовок и добавив к нему тело
begin чего-то там
end;