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

Цитата:
Сообщение от Night_Rain Посмотреть сообщение
Составить программу, которая содержит две функции...
Решительно не вижу проблем. Пожалуйста:
Код:
Var
 x,x1,x2:Extended;
 i:Integer;

function Th(z:extended):extended;
begin
 Th:=(Exp(z)-Exp(-z))/(Exp(z)+Exp(-z));
end;

function ArTh(z:extended):extended;
begin
 ArTh:=(1/2)*Ln((z+1)/(1-z));
end;

Procedure Var_s(y:extended; var y1:extended; var y2:extended);
begin
 y1:=ArTh(Th(y));
 y2:=Th(ArTh(y));
end;

Begin
 For i:=-9 to 9 do
  begin
   x:=i/10;
   Var_s(x,x1,x2);
   Write('x=',x:4:1,'   x1=',x1,'   x2=',x2);
   If Abs(x-x1)<Abs(x-x2) then
    Writeln('   x1')
   else
    Writeln('   x2');
  end;
 Readln;
End.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

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