Программа


Program Chord;
Var Result:real;  { Корень }
    X:real;  { Приближение к корню }
Function F(x:real):real; { Вычисление функции }
  Begin
    F:=Sin(x)/Cos(x)-2
  End;
Function Root(X0:real):real; { Функция нахождения корня }
  const Eps=0; { Точность вычислений }
  var X,XNew:real;  { Приближенные значения корня }
      F0:real;   { Значение функции в точке X0 }
      Fx:real;   { Значение функции в точке X }
  Begin
    F0:=F(X0);  { Вычисление значения функции в точке начального приближения }
    X:= X0+1;  { Определение первого приближения }
    XNew:=X+1;  { Определение второго приближения }
    while abs(XNew-X)>Eps do { Цикл приближения к корню }
      begin
        X:=XNew;  { Сохранение предыдущего приближения }
        Fx:=F(X); { Вычисление значения функции в точке X }
        if Fx<>0 { Если новое приближение не является корнем }
          then  XNew:=X-(X-X0)/(Fx-F0)*Fx { то вычисление нового приближения }
          else  XNew:=X                  { иначе подготовка выхода из цикла }
      end;
    Root:=(XNew+X)/2 { Определение значения функции }
  End;
BEGIN
  WriteLn;  { Пропуск строки }
  Write('Введите приближение корня ');
  ReadLn(X); { Ввод начального приближения }

  Result:=Root(X);                              { Вычисление корня }
  writeln('x=',Result,'  F(x)=',F(Result))          { Вывод корня и проверки }
END.


Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию