0% found this document useful (0 votes)
973 views6 pages

Program Bisection: X X X X F

This document compares the performance of the bisection, Newton-Raphson, and modified Newton-Raphson methods for finding the root of the function F(x) = x^3 - 5x^2 - 2x + 10. It provides the initial values, tolerances, number of iterations, and calculated roots for each method.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
973 views6 pages

Program Bisection: X X X X F

This document compares the performance of the bisection, Newton-Raphson, and modified Newton-Raphson methods for finding the root of the function F(x) = x^3 - 5x^2 - 2x + 10. It provides the initial values, tolerances, number of iterations, and calculated roots for each method.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd

F ( x ) x 3 5 x 2 2 x 10

BISECTION
XL = -5 ; XU = 0

TOLERANSI

NEWTON-RAPHSON
Xo = -5

MODIFIED NEWTON-RAPHSON
Xo = -5

ITERASI

AKAR

ITERASI

AKAR

ITERASI

AKAR

6
9
13
16
19
23
26
29

-1.484375
-1.41601563
-1.41418457
-1.41426086
-1.41421318
-1.41421378
-1.41421355
-1.41421356

5
5
6
6
7
7
7
7

-1.41425073
-1.41425073
-1.41421356
-1.41421356
-1.41421356
-1.41421356
-1.41421356
-1.41421356

3
4
4
4
5
5
5
5

-1.41426138
-1.41421356
-1.41421356
-1.41421356
-1.41421356
-1.41421356
-1.41421356
-1.41421356

0.1
0.01
0.001
0.0001
0.00001
0.000001
0.0000001
0.00000001

100
80
60
40
20
0
-4

-3

-2

-1

0
-20
-40
-60

PROGRAM BISECTION
$DEBUG

*
*
*
*
*
*
*
*
*
*
*
*

PROGRAM BISECTION
DEFINITION OF VARIABLES
XL
XU
XR
ES
EA
MAXIT
ITER

=
=
=
=
=
=
=

LOWER GUESS
UPPER GUESS
ROOT ESTIMATE
STOPPING CRITERION (%)
APPROXIMATE ERROR (%)
MAXIMUM ITERATIONS
NUMBER OF ITERATION

REAL*8
Y,X,XL,XU,ES,CHECK,EA,XR,TEST
INTEGER
MAXIT,ITER
CHARACTER JAWAB
C

C
C

Y(X)=X**3-5*X**2-2*X+10
Y(X)=(X*X*X)-155
20 WRITE(*,'(/A\)')'
READ(*,*)XL
WRITE(*,'(A\)') '
READ(*,*)XU
WRITE(*,'(A\)') '
READ(*,*)MAXIT
WRITE(*,'(A\)') '
READ(*,*)ES
WRITE(*,'(A\)') '
READ(*,*)ES

INPUT NILAI BAWAH (XL) : '


INPUT NILAI ATAS

(XU) : '

INPUT JUMLAH ITERASI


PROSENTASI ERROR
ERROR

IF (CHECK.GT.0) THEN
WRITE(*,04)
GOTO 20
ELSE
GOTO 30
ENDIF
30 ITER=0
EA=1.1*ES
EA=ES+1.0
10 IF (EA.GT.ES.AND.ITER.LT.MAXIT) THEN
XR=0.5*(XL+XU)
ITER=ITER+1
C

IF (XL+XU.NE.0.0) THEN
EA=ABS((XU-XL)/(XL+XU))*100.0
EA=ABS(XR-XL)
ENDIF
WRITE(*,*)'XL : ',XL,'
TEST=Y(XL)*Y(XR)

: '
: '

CHECK=Y(XL)*Y(XU)

: '

XR : ',XR

IF (TEST.EQ.0.0) THEN
EA=0.0
ELSE
IF (TEST.LT.0.0) THEN
WRITE(*,*)'XU'
XU=XR
ELSE
WRITE(*,*)'XL'
XL=XR
ENDIF
ENDIF
GOTO 10
ENDIF

C
C

WRITE(*,01)ITER
WRITE(*,02)XR
WRITE(*,03)EA
IF (EA.GT.ES) THEN
WRITE(*,05)
ELSE
WRITE(*,06)
ENDIF
WRITE(*,07)
READ(*,'(A)')JAWAB
IF (JAWAB.EQ.'y'.OR.JAWAB.EQ.'Y') THEN
GOTO 20
ELSE
PRINT *
STOP
ENDIF
****** FORMAT ******

01 FORMAT(/1X,' JUMLAH ITERASI


:',I6)
02 FORMAT(1X,' AKAR PERSAMAAN
:',F14.8)
03 FORMAT(1X,' PROSENTASI ERROR
:',F14.8/)
03 FORMAT(1X,' ERROR
:',F14.8/)
04 FORMAT(/1X,' Y(XL)*Y(XU) > 0.0')
05 FORMAT(1X,' TOLERANSI TIDAK TERPENUHI !!!'/)
06 FORMAT(1X,' TOLERANSI TERPENUHI !!!'/)
07 FORMAT(2X,'INGIN ULANGI PERHITUNGAN (Y/T) ? '\)
STOP
END

PROGRAM NEWTON-RAPHSON METHODS


$DEBUG

PROGRAM NEWTON_RAPHSON_METHODS
*
*
*
*
*
*
*
*
*
*
*

C
C

PROGRAM NEWTON-RAPHSON METHODS


DEFINITION OF VARIABLES
Xo
F1
F2
XI
TOL
N

=
=
=
=
=
=

INITIAL APPROXIMATION
FIRST DERIVATIVE
SECOND DERIVATIVE
X(i)
TOLERANCE
NUMBER OF ITERATION

REAL*8 X,XI,T,TOL
INTEGER I,N
CHARACTER JAWAB
F(X)=X**3-5*X**2-2*X+10
G(X)=3*X**2-10*X-2
F(X)=X**3-155
G(X)=3*X**2
50 WRITE(*,*)
WRITE(*,1)
WRITE(*,*)' PROGRAM NEWTON-RAPHSON METHODS'
WRITE(*,1)
WRITE(*,'(/A\)')' INPUT Xo = '
READ(*,*)X
WRITE(*,'(A\)')' TOLERANSI = '
READ(*,*)TOL
WRITE(*,'(A\)')' ITERASI
= '
READ(*,*)N
WRITE(*,*)
WRITE(*,2)
WRITE(*,3)
WRITE(*,4)
DO 100 I=1,N
XI=X-(F(X)/G(X))
T=ABS(XI-X)
WRITE(*,5)I,F(X),G(X),XI
IF (T.LT.TOL) GOTO 200
X=XI
100 CONTINUE
200 WRITE(*,4)
WRITE(*,6)
WRITE(*,7)XI
WRITE(*,8)T
WRITE(*,4)
WRITE(*,9)
READ(*,'(A)')JAWAB
IF (JAWAB.EQ.'y'.OR.JAWAB.EQ.'Y') THEN
GOTO 50
ELSE
PRINT *

STOP
ENDIF
****** FORMAT ******
1
2
3
4
5
6
7
8
9

FORMAT(1X,32('-'))
FORMAT(1X,48('-'))
FORMAT(2X,'ITERASI',6X,'F(X)',10X,'G(X)',10X,'X(i)')
FORMAT(1X,48('-'))
FORMAT(2X,I4,4X,F10.4,4X,F10.4,4X,F10.4)
FORMAT(1X,' FINAL SOLUTION : ')
FORMAT(1X,'
X
= ',F16.8)
FORMAT(1X,'
(X-XI)
= ',F16.8/)
FORMAT(/1X,'INGIN ULANGI PERHITUNGAN (Y/T) ? '\)
STOP
END

PROGRAM MODIFIED NEWTON-RAPHSON METHODS


$DEBUG

PROGRAM MODIFIED_NEWTON_RAPHSON_METHODS

*
*
*
*
*
*
*
*
*
*
*

PROGRAM MODIFIED NEWTON-RAPHSON METHODS


DEFINITION OF VARIABLES
Xo
F1
F2
XI
TOL
N

=
=
=
=
=
=

INITIAL APPROXIMATION
FIRST DERIVATIVE
SECOND DERIVATIVE
X(i)
TOLERANCE
NUMBER OF ITERATION

REAL*8 X,F1,F2,A,B,XI,T,TOL
INTEGER I,N
CHARACTER JAWAB
C

F(X)=X**3-5*X**2-2*X+10
F(X)=X**3-155
50 WRITE(*,*)
WRITE(*,1)
WRITE(*,*)' PROGRAM MODIFIED NEWTON-RAPHSON METHODS'
WRITE(*,1)
WRITE(*,'(/A\)')' INPUT Xo = '
READ(*,*)X
WRITE(*,'(A\)')' TOLERANSI = '
READ(*,*)TOL
WRITE(*,'(A\)')' ITERASI
= '
READ(*,*)N
WRITE(*,*)
WRITE(*,2)
WRITE(*,3)
WRITE(*,4)

DO 100 I=1,N
F1=(1/6.0)*(-F(X-0.3)+9*F(X-0.2)-45*F(X-0.1)
+
+45*F(X+0.1)-9*F(X+0.2)+F(X+0.3))
F2=(1/1.8)*(2*F(X-0.3)-27*F(X-0.2)+270*F(X-0.1)
+
-490*F(X)+270*F(X+0.1)-27*F(X+0.2)+2*F(X+0.3))
A=F2/(2*F1)
B=F1/F(X)
XI=X+(1/(A-B))
T=ABS(XI-X)
WRITE(*,5)I,F1,F2,XI
IF (T.LT.TOL) GOTO 200
X=XI
100 CONTINUE
200 WRITE(*,4)
WRITE(*,6)
WRITE(*,7)XI
WRITE(*,8)T
WRITE(*,4)
WRITE(*,9)
READ(*,'(A)')JAWAB
IF (JAWAB.EQ.'y'.OR.JAWAB.EQ.'Y') THEN
GOTO 50
ELSE
PRINT *
STOP
ENDIF
****** FORMAT ******
1
2
3
4
5
6
7
8
9

FORMAT(1X,41('-'))
FORMAT(1X,48('-'))
FORMAT(2X,'ITERASI',5X,'F1(X)',9X,'F2(X)',10X,'X(i)')
FORMAT(1X,48('-'))
FORMAT(2X,I4,4X,F10.4,4X,F10.4,4X,F10.4)
FORMAT(1X,' FINAL SOLUTION : ')
FORMAT(1X,'
X
= ',F16.8)
FORMAT(1X,'
(X-XI)
= ',F16.8/)
FORMAT(/1X,'INGIN ULANGI PERHITUNGAN (Y/T) ? '\)
STOP
END

You might also like