CALL NEWTO (X1,X2,EPS,X,K)

CALL IDRES(X1,X2,EPS,X,K)

10 STOP

END

 

SUBROUTINE NEWTO (A,B,EPS,X,K)

* РЕШЕНИЕ НЕЛИНЕЙНЫХ УРАВНЕНИЙ

* МЕТОДОМ НЬЮТОНA

PRINT*,'ВВЕДИТЕ ДОПУСКАЕМУЮ ПОГРЕШНОСТЬ EPS'

READ(5,*) EPS

K=0

X0=A

IF (ABS(F1(B)).GT.ABS(F1(A))) X0=B

C=F(X0)

1 X=X0-C/F1(X0)

K=K+1

C=F(X)

IF (ABS(C).LE.EPS) GO TO 5

IF (ABS(X0-X).LE.2*EPS) GO TO 5

X0=X

GO TO 1

5 RETURN

END

 

FUNCTION F(X)

* Решаемое уравнение

F=COS(2*X)-.25

END

 

FUNCTION F1(X)

* Производная от решаемого уравнения

F1=-2.*SIN(2*X)

END

 

Примечания. 1. Все подпрограммы, вызываемые главной программой, должны быть записаны в одном файле с главной программой.

2. Текст подпрограммы OTKOR приведен в приложении 1,

подпрограммы IDRES – в приложении 2.