Показать сообщение отдельно
Старый 28.11.2016, 19:45   #7 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от SpiresVili Посмотреть сообщение
Напишите пожалуйста программу на Паскаль
Код:
Const
 a=2.0;

Var
 x:Real;
 i:byte;

function L_n(t:real):real;
var
 n:byte;
 c,S:real;
begin
 n:=0;
 c:=(t-1)/(t+1);
 S:=c;
 for n:=1 to 10 do
  begin
   c:=c*Sqr(t-1)/Sqr(t+1)*(2*n-1)/(2*n+1);
   S:=S+c;
  end;
 L_n:=S*2;
end;

function Z1(a1,x1:real):real;
begin
 if x1>=a1 then Z1:=a1*L_n(x1) else Z1:=x1*L_n(a1);
end;

function Z2(a2,x2:real):real;
begin
 if x2>=a2 then Z2:=a2*Ln(x2) else Z2:=x2*Ln(a2);
end;

Begin
 Writeln(' x         Result        Accurate');
 for i:=0 to 6 do
  begin
   x:=3.0+0.5*i;
   writeln(x:3:1,Z1(a,x):15:5,Z2(a,x):15:5);
  end;
 Readln
End.
Между прочим, в формуле задания, как обычно в методичках, лажа. Показатели степени в разложении логарифма должны быть (2n+1) как в числителе, так и в знаменателе.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070