Вычислить значения функций - Turbo Pascal (33577)

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

Здравствуйте, товарищи! Очень надеюсь на вашу помощь. Я начинающий (очень) программист. Изучаю предмет менее полугода. Вычислить значения функций f1(x) и f2(x) для значений аргументов, указанных в вариантах заданий № 1 – 30 по первой работе. Функцию f2(x) вычислить для ряда точностей e=10^-2; e=10^-3; e=10^-3. Для указанных точностей определить количество N элементов ряда, суммируемых для достижения заданной точности. Для аргумента x, изменяющегося от –0.6 с шагом 0.05 вычислить 20 значений функций:


textual

Код к задаче: «Вычислить значения функций - Turbo Pascal (33577)»

uses crt;
function f1(x:real):real;
begin
f1:=ln(x+sqrt(1+x*x))/sqrt(1+x*x)
end;
function f2(x,e:real;var k:integer):real;
var t,s:real;
begin
k:=0;
t:=x;
s:=t;
while abs(t)>e do
 begin
  k:=k+1;
  t:=-t*4*sqr(k)*sqr(x)/(2*k*(2*k+1));
  s:=s+t;
 end;
f2:=s
end;
var a,h,x,e:real;
    i,n:integer;
begin
clrscr;
writeln('--------------------------------------------------------');
writeln('|      |        |  e=10^-2   |  e=10^-3   |  e=10^-4   |');
writeln('|  x   |  f1(x) |------------|------------|------------|');
writeln('|      |        |  f2(x) | n |  f2(x) | n |  f2(x) | n |');
writeln('--------------------------------------------------------');
a:=-0.6;
h:=0.05;
for i:=1 to 20 do
 begin
  x:=a+(i-1)*h;
  write('|',x:5:2,' |',f1(x):7:4,' |',f2(x,0.01,n):7:4,' |',n:2,' |');
  write(f2(x,0.001,n):7:4,' |',n:2,' |',f2(x,0.0001,n):7:4,' |',n:2,' |');
  if i<20 then writeln;
  x:=x+h;
 end;
readln
end.
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.


СДЕЛАЙТЕ РЕПОСТ

7   голосов, оценка 4.143 из 5

Источник
Похожие ответы