recr.PAS

{* Использование рекурсии *}

Unit RECR;
Interface
Implementation
Begin
 writeln('Дан n-ый элемент геометрической прогрессии и её знаменатель используя рекурсивную функцию найти первый элемент такой последовательности. ');
End.

Program pas42640;

Uses recr.pas; {* Эту строку можно удалить *}
Var {* Объявление переменных *}
  n : byte;
  q : byte;
  b : real;
Function Code(n, q : byte;
b : real) : real;
Begin
  If n > 1 Then
    b := b / q;
  If n > = 2 Then
    b := Code(n - 1, q, b);
  Code := b;
End;
Begin
  Write('Введите элемент геометрической прогрессии: ');
  Readln(b);
  Write('Введите его номер: ');
  Readln(n);
  Write('Введите знаменатель прогрессии: ');
  Readln(q);
  Writeln('Пераый элемент этой прогрессии: ', Code(n, q, b) : 3 : 3);
End.