0% found this document useful (0 votes)
238 views

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)
238 views

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
You are on page 1/ 6

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