Mata Kuliah: Kalkulus
Jurusan: Teknik Informatika
Universitas Islam Negeri Maulana Malik Ibrahim Malang

Metode Tertutup

Metode tertutup disebut juga metode bracketing. Disebut sebagai metode tertutup karena dalam pencarian akar-akar persamaan non-linier dilakukan dalam suatu selang [a,b]

Metode Tabel

Penyelesaian persamaan non-linier menggunakan metode tabel dilakukan dengan membagi persamaan menjadi beberapa area, dimana untuk x =[a,b] dibagi sebanyakN bagian dan pada masing-masing bagian dihitung nilai f (x)sehingga diperoleh nilai f (x) pada setian N bagian. Bila nilai f (xk) = 0 atau mendekati nol, dimana a ≤ k ≤ b, maka dikatakan bahwa xk adalah penyelesaian persamaan f (x). Bila tidak ditemukan, dicari nilai f (xk) dan f (xk+1) yang berlawanan tanda. Bila tidak ditemukan, maka persamaan tersebu dapat dikatakan tidak mempunyai akar untuk rentang[a,b]. Bila akar persamaan tidak ditemukan, maka ada dua kemungkinan untuk menentukan akar persamaan, yaitu: a. Akar persamaan ditentukan oleh nilai mana yang lebih dekat. Bila f (xk) ≤ f (xk+1), maka akarnya xk. Bila f (xk+1) ≤ f (xk), maka akarnya xk+1. b. Perlu dicari lagi menggunakan rentang x =[xk,xk+1].

Soal-soal

  1. 4x – 7 < 3x – 5
  2. 2x – 4 ≤ 6 – 7x ≤ 3x + 6
  3. x^2 + x – 12 < 0
  4. 3x^2 - 11x - 4 < 0
  5. x+5/2−1 ≤ 0

soal Nomor 1 (4x – 7 < 3x – 5 )

Cara Manual:
4x – 7 < 3x – 5
4x - 7 < 3x - 5
4x-3x < 7-5
HP = {x < 2

Menggunakan Tabel dengan menggunakan fungsi root_table()

root_table <- function(f, a, b, N=20){
  h <- abs((a+b)/N)
  x <- seq(from=a, to=b, by=h)
  fx <- rep(0, N+1)
  for(i in 1:(N+1)){ 
    fx[i] <- f(x[i]) 
  } 
  data <- data.frame(x=x, fx=fx) 
  return(data)
} 
tabel <- root_table(f=function(x){4*x - 7 - 3*x - 5}, a=-1, b=0, N=10)

tabel
##       x    fx
## 1  -1.0 -13.0
## 2  -0.9 -12.9
## 3  -0.8 -12.8
## 4  -0.7 -12.7
## 5  -0.6 -12.6
## 6  -0.5 -12.5
## 7  -0.4 -12.4
## 8  -0.3 -12.3
## 9  -0.2 -12.2
## 10 -0.1 -12.1
## 11  0.0 -12.0

Menggunakan Grafik dengan menggunakan fungsi plot

plot(tabel, type="l")

Soal nomor 2 (2x – 4 ≤ 6 – 7x ≤ 3x + 6)

Cara manual:
Persamaan pertama

2x - 4 ≤ 6 - 7x

2x + 7x ≤ 6 + 4

9x ≤ 10

x ≤ 10/9

Persamaan kedua

6 - 7x ≤ 3x + 6

-3x - 7x ≤ - 6 + 6

-10x ≤ 0

x ≤ 0

HP = {0≤x≤10/9}

Menggunakan tabel:

tabe1l <- root_table(f=function(x){2*x - 4 - 6 - 7*x - 3*x + 6}, a=0, b=1, N=10)

tabe1l
##      x    fx
## 1  0.0  -4.0
## 2  0.1  -4.8
## 3  0.2  -5.6
## 4  0.3  -6.4
## 5  0.4  -7.2
## 6  0.5  -8.0
## 7  0.6  -8.8
## 8  0.7  -9.6
## 9  0.8 -10.4
## 10 0.9 -11.2
## 11 1.0 -12.0

Menggunakan Grafik

plot(tabe1l, type="l")

Soal nomor 3 (x^2 + x – 12 < 0)

Cara Manual:
x^2 + x - 12 < 0

(x + 4) (x - 3) < 0

x + 4 > 0

x > - 4

x - 3

x < 3

HP = {-4 < x < 3}

Menggunakan tabel:

root_table <- function(f, a, b, N=20){
  h <- abs((a+b)/N)
  x <- seq(from=a, to=b, by=h)
  fx <- rep(0, N+1)
  for(i in 1:(N+1)){ 
    fx[i] <- f(x[i]) 
  } 
  data <- data.frame(x=x, fx=fx) 
  return(data)
} 
tabel <- root_table(f=function(x){x*2 + x - 12 }, a=-4, b=0, N=20)

print(tabel)
##       x    fx
## 1  -4.0 -24.0
## 2  -3.8 -23.4
## 3  -3.6 -22.8
## 4  -3.4 -22.2
## 5  -3.2 -21.6
## 6  -3.0 -21.0
## 7  -2.8 -20.4
## 8  -2.6 -19.8
## 9  -2.4 -19.2
## 10 -2.2 -18.6
## 11 -2.0 -18.0
## 12 -1.8 -17.4
## 13 -1.6 -16.8
## 14 -1.4 -16.2
## 15 -1.2 -15.6
## 16 -1.0 -15.0
## 17 -0.8 -14.4
## 18 -0.6 -13.8
## 19 -0.4 -13.2
## 20 -0.2 -12.6
## 21  0.0 -12.0

Menggunakan grafik:

#Membuat vektor data 
x <- c(-4:3); y <- x^2 + x - 12

#Membagi jendela grafik menjadi 1 baris dan 1 kolom
par(mfrow=c(1,1))

#Output
plot(x, y, type="l")

Soal nomor 4 (3(x^2) - 11x - 4 < 0)

Cara manual:
(3x + 1) (x - 4) < 0

3x + 1 < 0

3x < -1

x < -1/3

x - 4 < 0

x < 4

HP = {-1/3 <x< 4}

root_table <- function(f, a, b, N=20){
  h <- abs((a+b)/N)
  x <- seq(from=a, to=b, by=h)
  fx <- rep(0, N+1)
  for(i in 1:(N+1)){ 
    fx[i] <- f(x[i]) 
  } 
  data <- data.frame(x=x, fx=fx) 
  return(data)
} 
tabel <- root_table(f=function(x){3*x^2 - 11*x - 4}, a=0, b=4, N=10)

print(tabel)
##      x     fx
## 1  0.0  -4.00
## 2  0.4  -7.92
## 3  0.8 -10.88
## 4  1.2 -12.88
## 5  1.6 -13.92
## 6  2.0 -14.00
## 7  2.4 -13.12
## 8  2.8 -11.28
## 9  3.2  -8.48
## 10 3.6  -4.72
## 11 4.0   0.00

Menggunakan grafik:

#membuat vektor data 
x <- c(-0.33:4); y <- 3*x^2 - 11*x -4
#Membagi jendela grafik menjadi 1 baris dan 1 kolom
par(mfrow=c(1,1))

plot(x, y, type="l")

Soal nomor 5 (x+5/2x−1 ≤ 0)

Cara manual:
(x + 5) / (2x - 1) ≤ 0

2x - 1 < 0

2x < 1

x < 1/2

x + 5 ≤ 0

x ≤ -5

HP = {-5 ≤ x ≤ 1/2}

Menggunakan Tabel:

root_table <- function(f, a, b, N=20){
  h <- abs((a+b)/N)
  x <- seq(from=a, to=b, by=h)
  fx <- rep(0, N+1)
  for(i in 1:(N+1)){ 
    fx[i] <- f(x[i]) 
  } 
  data <- data.frame(x=x, fx=fx) 
  return(data)
} 
tabel <- root_table (f=function(x){x + 5/2*x-1}, a=-5, b=0, N=10)

print(tabel)
##       x     fx
## 1  -5.0 -18.50
## 2  -4.5 -16.75
## 3  -4.0 -15.00
## 4  -3.5 -13.25
## 5  -3.0 -11.50
## 6  -2.5  -9.75
## 7  -2.0  -8.00
## 8  -1.5  -6.25
## 9  -1.0  -4.50
## 10 -0.5  -2.75
## 11  0.0  -1.00

Menggunakan grafik:

##Membuat vektor data
x <- c(-5:1.5); y <- x+5/2*x-1

#Membagi jendela grafik menjadi 1 baris dan 1 kolom
par(mfrow=c(1,1))

plot(x, y, type="l")

Referensi

https://bookdown.org/moh_rosidi2610/Metode_Numerik/calculation.html#assigningvar