Вычислить значение суммы - Free Pascal (645)

Узнай цену своей работы

Формулировка задачи:

Вычислить значение суммы(значение n вводиться с клавиатуры) 1+x/1!+x2/2!+x3/3!+...+xn/n! (x задано)
Через рекурсивные алгоритмы

Решение задачи: «Вычислить значение суммы»

textual
Листинг программы
uses crt;
function expx(x:real;n:integer):real;
function t(x:real;n:integer):real;
begin
if n=0 then t:=1
else t:=t(x,n-1)*x/n;
end;
begin
if n=0 then expx:=t(x,0)
else expx:=expx(x,n-1)+t(x,n);
end;
var x:real;
    n:integer;
begin
clrscr;
write('x=');
readln(x);
write('n=');
readln(n);
writeln('S=',expx(x,n):0:4);
write('exp(x)=',exp(x):0:4);
readln
end.

Объяснение кода листинга программы

  1. Объявлены две функции: expx и t.
  2. В функции t проверяется базовый случай: если n равно 0, то возвращается 1.
  3. В функции t для остальных случаев рекурсивно вызывается функция t с аргументами x и n-1, умноженными на x/n.
  4. В функции expx проверяется базовый случай: если n равно 0, то возвращается результат функции t с аргументами x и 0.
  5. В функции expx для остальных случаев рекурсивно вызывается функция expx с аргументами x и n-1, к которому добавляется результат функции t с аргументами x и n.
  6. Объявлены две переменные: x и n.
  7. В основной части программы происходит считывание значений x и n с помощью функций readln.
  8. Вызывается функция expx с аргументами x и n, и результат выводится на экран с помощью функции writeln, с указанием формата вывода числа с плавающей точкой и количеством знаков после запятой.
  9. Вызывается функция exp с аргументом x, и результат выводится на экран с помощью функции writeln, с указанием формата вывода числа с плавающей точкой и количеством знаков после запятой.
  10. Программа ожидает ввода с помощью функции readln.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5