Вычисление конечных сумм - Turbo Pascal (29369)
Формулировка задачи:
разработать алгоритм вычисления функции y и суммы для [a,b] (a=0.1, b=1). Шаг изменения значений аргумента x на заданном отрезке h=0.1 , количество членов ряда n= 35
Решение задачи: «Вычисление конечных сумм»
textual
Листинг программы
uses crt; const a=0.1; b=1; h=0.1; n=35; function f(x:real):real; begin f:=(1-x*x/2)*cos(x)-x*sin(x)/2; end; function s(x:real):real; var t,y:real; i:integer; begin t:=1; y:=t; for i:=1 to n do begin t:=-t*x*x/2/i/(2*i-1); y:=y+t*(2*i*i+1); end; s:=y; end; var x:real; begin clrscr; x:=a; while x<b+h/2 do begin writeln('x=',x:4:1,' f=',f(x):8:4,' s=',s(x):8:4); x:=x+h; end; readln end.
Объяснение кода листинга программы
- В начале кода подключается библиотека crt, которая обеспечивает функции для работы с числами с плавающей точкой.
- Затем определяются константы: a=0.1, b=1, h=0.1, n=35.
- Далее объявляется функция f(x:real), которая вычисляет конечное значение функции для заданного значения x.
- Внутри функции f используется формула для вычисления значения функции: (1-xx/2)cos(x)-x*sin(x)/2.
- Затем объявляется функция s(x:real), которая вычисляет конечное значение суммы для заданного значения x.
- Внутри функции s объявляются переменные t и y, инициализируются значением 1.
- Затем идет цикл for, который выполняется n раз (где n - это значение переменной n).
- Внутри цикла значение переменной t вычисляется как -txx/2/i/(2i-1), а значение переменной y вычисляется как y+t(2ii+1).
- По завершении цикла значение переменной y сохраняется в переменной s.
- Затем объявляется переменная x, которая инициализируется значением a.
- В цикле while x меньше значения b+h/2 происходит вывод на экран значений переменных x, f(x) и s(x).
- После завершения цикла значение переменной x увеличивается на h.
- В конце кода вызывается функция readln, чтобы пользователь мог ввести данные.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д