numerik math mipa

67
0 BAHAN BACAAN MATA KULIAH METODE NUMERIK Oleh: Dr. Rochmad, M.Si Jurusan Matematika FMIPA UNNES

Upload: mas-nyam

Post on 07-Aug-2015

133 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Numerik Math Mipa

0

BAHAN BACAAN

MATA KULIAH METODE NUMERIK

Oleh:Dr. Rochmad, M.Si

Jurusan Matematika FMIPA UNNES

Page 2: Numerik Math Mipa

1

BAGIAN IPENDAHULUAN

Beberapa definisi metode numerik dikemukakan ahli matematika, misalnya

metode numerik adalah teknik di mana masalah matematika diformulasikan sedemikian

rupa sehingga dapat diselesaikan oleh pengoperasian aritmetika (Chapra dan Chanale,

1991); metode numerik adalah teknik -teknik yang digunakan untuk merumuskan masalah

matematika agar dapat diselesaikan han ya dengan operasi hitungan, yang terdiri dari

operasi tambah, kurang, kali dan bagi (Susila, 1994 ; Ibraheem dan Hisyam, 2003).

Terdapat banyak jenis metode numerik, namun pada dasarnya, masing -masing metode

tersebut memiliki karakteristik umum, yaitu selal u mencakup sejumlah kalkulasi

aritmetika. Jadi metode numerik adalah suatu teknik untuk memformulasikan masalah

matematika sehingga dapat diselesaikan dengan operasi aritmetika yang terdiri dari

operasi tambah, kurang, kali dan bagi.

Pada dasarnya penyelesaian atau jawaban dari suatu masalah matematika yang

diharapkan berupa penyelesaian atau jawaban eksak. Misalnya dalam menyelesaikan

suatu persamaan, pemecah masalah sebenarnya berkeinginan memperoleh jawaban

eksak, yakni jawaban yang diperoleh tersebu t memenuhi persamaan semula secara eksak

(penyelesaian analitis). Tetapi karena proses komputasi (termasuk jika menggunakan

komputer) dalam pemecahan masalah sering melibatkan banyak langkah dan angka

(termasuk melakukan pembulatan) maka penyelesaian dari masalah sering hanya berupa

hampiran dari hasil eksak yang diharapkan. Bahkan hasil eksaknya sering tidak diketahui,

hal ini disebabkan konsep hampiran berkaitan dengan konsep pendekatan, misalnya

dalam kasus kekonvergenen suatu barisan bilangan. Kecuali u ntuk kasus-kasus khusus

metode numerik memberikan jawaban suatu masalah secara eksak. Namun pada

prinsipnya metode numerik digunakan untuk memecahkan masalah yang

penyelesaiannya berupa hampiran atau pendekatan dari nilai eksaknya.

Dengan demikian metode numerik menyediakan sejumlah kalkulasi aritmetika

yang kadang sulit dilakukan jika tanpa bantuan komputer. Oleh karena itu, pada era

teknologi elektronik ini, komputer menjadi alat bantu yang handal dalam menyelesaikan

masalah-masalah yang memerlukan perhitungan yang mencakup sejumlah besar kalkulasi

Page 3: Numerik Math Mipa

2

aritmetika. Pada saat ini komputer bukan barang asing bagi para pelajar, termasuk

mahasiswa. Komputer pribadi dengan kemampuan tinggi tersedia meluas , mahasiswa

secara pribadi banyak yang memiliki. Di kampus ban yak tersedia komputer di

“laboratorium komputer”, bahkan sekarang banyak digunakan di sekolah -sekolah,

termasuk sekolah dasar. Hal ini menjadikan peran metode numerik untuk memecahkan

masalah dengan bantuan komputer banyak diminati mahasiswa. Apalagi akhir-akhir ini

tuntutan dunia kerja adalah tenaga profesional yang mampu mengoperasikan komputer

baik menggunakan paket program maupun program komputer.

Di samping itu, ada sejumlah alasan mengapa orang menggunakan metode

numerik untuk memecahkan masalah yang dihadapinya. Beberapa alasan tersebut sebagai

berikut.

a. Metode numerik merupakan suatu teknik untuk menyelesaikan masalah matematika

yang efektif dan efisisen. Dengan bantuan komputer ia sanggup menangani masalah

yang rumit dan melibatkan perhitungan y ang luas, misalnya untuk memecahkan

masalah solusi suatu persamaan tak liear, sistem persamaan yang besar, dan

permasalahan lainnya termasuk dalam teknik dan sosial. Masalah yang sering sulit

atau bahkan tidak mungkin dapat diselesaikan secara analitis da pat diselesaikan

dengan metode numerik.

b. Saat ini terdapat berbagai paket program komputer (misalnya exel, maple, matlab,

atau program paket lainnya) yang tersedia dan diperdagangkan sehingga mudah

didapat yang dalam pengoperasiannya mencakup metode numeri k. Dengan demikian,

pemecah masalah tinggal menyesuaikan dengan karakteristik program paket tersebut

dengan algortima yang digunakan dalam pemecahan masalah.

c. Apabila masalah yang dihadapi sulit diselesaikan dengan bantuan program paket

komputer, maka pemecah masalah dapat menggunakan program komputer (misalnya

basic, pascal, fortran, atau program komputer lainnya). Jika pemecah masalah mahir

mendesain program sendiri, maka pemecah masalah dapat lebih leluasa dalam

menggunakan metode numerik untuk memecahka n masalah yang dihadapinya.

d. Di sisi lain, metode numerik merupakan semacam sarana yang efisien untuk

mengenal karakteristik komputer dan mendesain algoritma, diagram alur dan menulis

program komputer sendiri. Salah satu cara yang efektif untuk belajar men ggunakan

Page 4: Numerik Math Mipa

3

komputer adalah dengan mendesain program sendiri, mencoba (mengeksekusi),

merevisi, dan memperhalus program buatannya tersebut. Jika pengguna komputer

sukses dan mahir mendesain program sendiri, maka suatu ketika akan diakui oleh

masyarakat sebagai pemrogram (programer) yang selanjutnya menjadi suatu profesi.

e. Metode numerik dapat dijadikan sarana untuk memperkuat kemampuan menerapkan

ilmu matematika. Misalnya pemahaman terhadap konsep -konsep analisis yang

abstrak dapat direalkan dalam bentuk yang lebih sederhana melalui perhitungan

numerik dengan bantuan komputer , konsep-konsep kekonvergenan erat kaitannya

dengan iterasi yang sering digunakan pemrogram dalam mendesain programnya , dan

fungsi yang sulit dibayangkan grafiknya dapat dibuat gafiknya.

Bahan ajar metode numerik ini memerlukan prasyarat yaitu memahami konsep -

konsep matematika terutama kalkulus, persamaan diferensisal, analisis dan aljabar. Mata

kuliah metode numerik tergolong dalam matematika terapan (applied mathematics)

memerlukan kemahiran dalam menggunakan dan mengoperasikan komputer baik untuk

paket program maupun program komputer. Pada dasarnya mahasiswa dapat

menggunakan paket program komputer apapun yang dikuasainya dan dapat digunakan

untuk membantu memecahkan masalah yang dihadap ainya, dan demikian pula

mahasiswa dapat menggunakan program komputer apapun yang dikuasainya. Hal ini

disebabkan keberadaan komputer dalam mata kuliah metode numerik hanyalah sebagai

alat untuk membantu mahasiswa dalam melakukan perhitungan numerik yang rumit dan

bahkan mungkin sangat sulit jika diselesaikan secara analitis.

Agar mahasiswa dapat belajar metode numerik dengan lebih baik dan efisien,

mahasiswa diharapkan memahami teori -teori yang mendukung untuk memecahkan

masalah. Pemahaman terhadap teori -teori pendukung ini, memungkin menjadikan

mahasiswa dapat menggunakan pemikiran logis dan bahkan kreatif dalam

mengungkapkan algoritma, contoh -contoh masalah, diagram alur ( flow chart), dan desain

penulisan programnya. Tentu saja program yang dibuat (den gan bahasa program apapun)

diharapkan dapat dieksekusi (dijalankan) di komputer dan hasilnya menunjukkan

pemecahan terhadap masalah yang dihadapi. Dengan demikian mahasiswa juga

diharapkan dapat menginterpretasikan hasil -hasil desain programnya.

Page 5: Numerik Math Mipa

4

Mata kuliah metode numerik, karena termasuk matematika terapan pada dasarnya

mencakup masalah dalam kehidupan sehari-hari yang luas, terutama masalah-masalah

yang berkaitan dengan sain, teknik, dan sosial. Oleh karena itu, mahasiswa diharapkan

membaca berbagai literatur untuk memperluas pemikiran dan pemahamannya terhadap

penggunaan metode numerik dalam memecahkan masalah -masalah yang berkaitan

dengan masalah dalam kehidupan sehari -hari.

Bagi mahasiswa yang kreatif dapat memilih masalah yang berkaitan dengan

fenomena alam yang dihadapinya, membuat model matematikanya, mencari penyelesaian

umum atau khusus dari model tersebut, dan kemudian dapat mendesain program untuk

mencari pemecahan yang melibatkan hampiran dan ilustrasi animasi komputer misalnya

gerakan grafik dan sebagainya. Dengan cara seperti ini, pemikiran dan keterampilan

mahasiswa dalam memecahkan masalah menjadi meningkat lebih tinggi, yang nantinya

akan berguna jika terjun ke dunia kerja, sebagai seorang yang profesional.

Tujuan mata kuliah metode numerik adalah mahasiswa memahami konsep-konsep

dasar metode numerik, memilih teknik yang cocok untuk menyelesaikan masalah

matematika dengan metode numerik. Mahasiswa mampu menyelesaikan masalah

matematika meliputi: pemodelan, pemilihan metode (algoritma) n umerik, membuat

diagram alur, membuat program komputer, dan menafsirkan hasilnya. Kreatifitas

mahasiswa dalam memecahkan masalah diharapkan tumbuh dan berkembang. Setelah

mahasiswa lulus mata kuliah ini diharapkan memiliki wawasan luas tentang berbagai

teknik pemecahan masalah dengan bantuan komputer, memiliki pemikiran logis dan

kreatif dalam melihat kaitan antara fenomena alam, teori, dan strategi pemecahannya , dan

diharapkan mampu mengembangkan kemampuannya dalam mendesain program

komputer dalam memecahkan masalah yang berkaitan dengan metode numerik.

Materi mata kuliah metode numerik berkaitan dengan galat dan komputasi, akar

persamaan tak linear meliputi pelokasian akar, metode bagi dua, metode posisi palsu,

iterasi titik tetap, metode Newton -Raphson, metode secant (talibusur); interpolasi

meliputi interpolasi linear dan kuadrat, interpolasi beda terbagi Newton, Interpolasi pada

titik-titik berjarak sama, interpolasi lagrange, interpolasi invers, dan interpolasi Spline;

Diferensial dan integral numerik meliputi hampiran turunan, integral numerik, dan aturan

komposisi, serta penggunaan metode numerik untuk memecahkan masalah sehari -hari.

Page 6: Numerik Math Mipa

5

BAB II

GALAT DAN KOMPUTASI

A. KOMPUTASI

Metode numerik merupakan suatu cabang atau bidang ilmu matematika,

khususnya untuk memecahkan masalah-masalah di bidang matematika, teknik, sain,

dan sosial, yang sulit jika diselesaikan secara analitik. Operasi yang digunakan adalah

operasi aritmetika misalnya tambah, kurang, kali dan bagi. Karena perkembangan di

bidang teknologi komputer maju dengan pesat, maka dalam memecahkan masalah

tersebut efektif dan efisien menggunakan bantuan komputer . Dalam mempelajari atau

menerapkan metode numerik, ada beberapa pemikiran dasar yang melandasinya, baik

berupa manfaat maupun kendala.

a. Apa yang Perlu Diperhatikan?

Metode numerik pada prinsipnya berkaitan dengan komputasi. Di satu sisi analisis

numerik dapat dipandang mendasari metode numerik, misalnya pada masalah

pemecahan masalah dengan metode bagi dua ( bisection) perlu pemahaman terhadap

analisis numerik. Berkaitan dengan komputasi, berikut ini beberapa hal -hal yang

penting yang perlu mendapat perhatian .

1. Setiap perhitungan (komputasi) mempunyai tujuan, tetapi perlu diperhatikan

bahwa maksud utama dari perhitungan adalah proses dan hasil dalam mencari

pemecahan masalah, bukan hanya untuk memperoleh sustu solusi berupa

bilangan, meskipun demikian fokus tetap pada mencari solusi suatu masalah yang

mendekati solusi eksaknya . Selanjutnya, dalam melakukan perhitungan,

hendaknya dipilih proses perhitungan atau algoritma yang efektif dan efisien,

yaitu yang memerlukan prosedur perhitungan yang sependek mungkin dan

memerlkukan waktu yang sesingkat mungkin . Dengan demikian, tujuan

perhitungan adalah memperoleh pendekatan dari solusi eksak suatu masalah

dengan tuingkat kesalahan relatif kecil dan dalam waktu yang sesingkat -

singkatnya.

Page 7: Numerik Math Mipa

6

2. Pemilihan rumus dan algoritma tertentu tidak hanya mempengaruhi proses dan

hasil perhitungan, tetapi juga penafsiran tentang hasil yang diperoleh. Solusi

yang kurang tepat akan memberi dampak pada penafsiran yang kurang akurat.

Tehnik perhitungan yang sering digunakan dalam metode numerik adalah iterasi.

Menggunakan sejumlah iterasi tertentu yang diperlukan, atau pemilihan selang,

yang seringkali bermanfaat da lam memberikan pengertian tentang masalah yang

dihadapi. Yang perlu diperhatikan dalam menggunakan metode iterasi ini adalah

bagaimana menghentikan perhitungan agar tidak terjadi pengulangan terus

menerus.

3. Dengan demikian melalui iterasi ketelitian pendek atan solusi bergantung pada

strategi “menghentikan” proses berulang dalam iterasi tersebut. P erhitungan

melalui iterasi erat kaitannya dengan sumber masalah maupun penggunaan

jawaban berulang yang diinginkan. Tetapi pemecah masalah masih harus tetap

memperhatikan masalah yang dihadapi, yakni kesesuaian antara pendekatan

solusi dan masalah. Untuk itu, diperlukan pengertian tentang tentang aplikasi

persamaan atau rumus yang akan digunakan untuk perhitungan. Dalam

melakukan prosedur iterasi sering merubah rum us agar ‘mudah” dalam

melakukan perhitungan. Kesalahan atau kekurang akuratan dari pengubahan

rumus tersebut bersipat aplikatif dan di luar jangkauan komputasi. Oleh karena

itu, perlu ada kaitan antara masalah yang dihadapi dengan prosedur kompu tasi,

hal ini dapat ditempuh dengan memahami berbagai karakateristik paket program

dan program komputer yang digunakan untuk memecahkan masalah.

4. Jika tujuan melakukan komputasi adalah penghayatan terhadap proses pemecahan

masalah, maka perlu dipelajari ciri kelo mpok masalah dan kaitan antara kelompok

satu dengan lainnya, bilamana mungkin, dan rumus serta algoritma yang terlalu

khusus sifatnya perlu dihindari. Di sini terletak perbedaan antara analisis numerik

dengan metode numerik. Analisis numerik lebih ditekank an pada pengkajian

mendalam pada teori dan soal khusus, yang relevansinya dengan realitas kurang

diperhatikan, sedangkan metode numerik berusaha untuk memenuhi kebutuhan

akan berbagai teknik untuk memecahkan masalah yang kompleks dan mungkin

Page 8: Numerik Math Mipa

7

timbul dari studi literatur mapun muncul dari realitas kehidupan sehari -hari, yakni

dalam hal ini disebut dengan istilah fenomena alam.

5. Metode numerik berkaitan dengan hampiran dan karena berbagai alasan dalam

metode numerik selalu berhadapan dengan galat (kesalah an). Misalnya galat

pembulatan timbul karena proses perhitungan aritmetika dan keterbatasan dalam

penulisan angka signifikansi, misalnya seseorang membatasi penulisan bilangan

hanya sampai enam angka signifikansi. K hususnya dengan menggunakan mesin

hitung dan komputer, bilangan hanya dinyatakan dalam angka (digit) yang

terbatas jumlahnya. Di samping itu, galat juga terjadi jika dua bilangan yang

ditambahkan atau dikurangkan, akibatnya terjadi perambatan galat, yakni

semakin banyak operasi yang digunakan s emakin besar galatnya.. Yang perlu

diusahakan oleh pemecah masalah dengan teknik komputasi komputer adalah

mengupayakan agar galat sekecil mungkin. .

6. Menyangkut keterbatasan proses komputasi nila i dilaksanakan oleh komputer.

Karena komputer mempunyai kemampuan dan kecepatan terbatas, maka untuk

selang waktu tertentu hanya dapat melakukan operasi komputasi yang terbatas

jumlahnya. Berbagai komputer memiliki kemampuan dan kecepatan yang

berbeda. Sering terjadi perbedaan yang signifikan antara pemecah mas alah yang

satu dengan lainnya, hal ini disebabkan oleh kemampuan komputer dalam

memproses program dan panjangnya program yang ditulis pemecah masalah.

Kriteria sederhana yang dapat digunakan untuk menentukan pemecahan masalah

mana yang lebih baik adalah de ngan melihat kepraktisan desain program dan

kecilnya galat.

7. Umpan balik (feedback). Bilangan yang dihasilkan pada satu tahap akan

dipergunakan oleh komputer untuk komputasi tahap berikutnya, dan seterusnya.

Suatu program (prosedur) komputasi akan memp unyai suatu jalur ulang (loop)

siklus selanjutnya. Umpan balik erat kaitannya dengan stabilitas jalur ulang

umpan balik: suatu galat mungkin memperb esar atau mereda setelah iterasi

berkali-kali. Sasaran akhir dari analisis numerik yang dilakukan dalam meto de

numerik adalah diperolehnya metode yang terbaik untuk memperoleh jawaban

Page 9: Numerik Math Mipa

8

yang berguna dari persoalan matematika dan untuk menarik informasi yang

berguna dari berbagai jawaban yang dapat diperoleh .

8. Adanya kemajuan teknologi komputer yang memungkinka n pelaksanaan

komputasi secara tepat dan cepat menjadikan berbagai metode penyelesaian

persoalan dengan metode hampiran sangat berguna, antara lain karena hal berikut.

Pendekatan numerik, yang mungkin merupakan satu -satunya alternatif

penyelesaian, dapat diperoleh secara efisien . Guna menunjang komputasi ilmiah,

ada beberapa hal yang perlu diketahui yang berkaitan dengan teknik

pemrograman dan penggunaan komputer yaitu sebagai berikut: b ahasa

pemrograman komputer, beberapa di anataranya yang dipakai saat in i adalah

Pascal, Basic, Fortran, dan paket program lainnya misalnya Exel, Matlab, dan

lainnya.

b. Galat

Walaupun pemecah masalah selalu berusaha untuk memperoleh solusi

eksak, tetapi solusi yang demikian jarang diperoleh secara numerik. Solusi yang

diperoleh pada umumny adalah hampiran dari solusi eksak. Bahkan solusi eksaknya

itu sendiri tidak dapat ditemukan. Artinya pemecah masalah hanya mampu

memperoleh solusi hampiran dari solusi eksaknya.

Pada setiap langkah penyelesaian persoalan, dari formulasi hingga

komputasi numeriknya, galat (kesalahan) dan ketidakpastian dap at terjadi.

Ketidakpastian terjadi pada proses perumusan model matematika dan model numerik,

penyusunan metode, dan penerapan metode. Selain itu, faktor ketidakpastian juga

dapat berasal dari data yang dipergunakan. Sedangkan galat dapat disebabkan oleh

beberapa hal, misalnya pembulatan, pemotongan, dan lainnya yang berkaitan dengan

proses komputasi dan keterbatasan alat bantu mesin atau komputer yang digunakan.

Galat dalam metode numerik melekat pada banyak pemecahan masalah

yang melibatkan perhitungan bilangan, apakah dikerjakan secara perhitungan biasa

ataupun dengan bantuan komputer. Data input kadang kurang tepat, khususnya data

input yang diperoleh dari percobaan atau taksiran, dan proses numeriknya sendiri

menghasilkan beberapa macam galat. Galat sering disebut galat absolut

Page 10: Numerik Math Mipa

9

Galat absolut adalah selisih dari nilai pendekatan (hampiran) dan nilai eksak

(sebenarnya/sejati).

e = x* - x

dengan x* adalah nilai pendekatan dan x adalah nilai eksak (sebenarnya), dan e

adalah galat. Atau nilai sebenarnya adalah nilai hampiran ditambah galat.

x = x* + e.

Galat relatif adalah galat absolut dibagi nilai pendekatan. Sebenarnya lebih beralasan

mendefinisikannya sebagai galat absolut dibagi n ilai sebenarnya, tetapi biasanya nilai

sebenarnya tidak diketahui. Yang ada adalah nilai pendekatan dan suatu taksiran galat

atau suatu batas terbesar dari ukuran galat. Jika galat kecil, perbedaan antara dua

definisi tersebut tidak mempunyai arti pada nil ai numerik dari galat relatif. Untuk

bilangan yang mendekati 1, galat absolut dan galat relatif hampir sama. Untuk

bilangan yang tidak mendekati 1, mungkin terdapat perbedaan besar. Misalnya, jika

nilai sebenarnya 0,00006 dari suatu pendekatan 0,00005, gal at absolutnya hanya 10 -5,

tetapi galat relatifnya adalah 0,2 atau 20%. Di sisi lain, jika nilai sebenarnya 100.500

dan pendekatan adalah 100.000, galat absolutnya 500, tetapi galat relatifnya hanya 0,

005 atau 0,5%. Galat ralatif dirumuskan sebagai berikut .

E =x

e

dengan E adalah galat relatif, e adalah galat, dan x adalah nilai eksak. Dalam hal nilai

eksaknya tidak diketahui, galat relatif dapat dihitung dengan rumus

E =*x

e

dengan E adalah galat relatif, e adalah galat, dan x* adalah nilai pendekatan dari nilai

eksak.

Galat Pemotongan. Galat pemotongan bergubungan dengan galat yang disebabkan

oleh cara pelaksanaan prosedur numerik. Misalnya, Deret Taylor tak berhingga:

Page 11: Numerik Math Mipa

10

Sin x = x - ...!7!5!3

753

xxx

dapat dipakai menghitung sinus sebarang sudut x dalam radian. Jelas dalam kasus ini

pemecah masalah tidak dapat memakai semua suku dalam deret untuk perhitungan.

Karena deretnya tak berhingga, maka perhitungan akan berhenti (dihentikan) sampai

pada sejumlah suku yang berhingga, misalnya sampai suku ketiga, ke empat, atau

suku ke dua puluh.

Suku-suku yang dihilangkan (jumlahnya tak berhingga) menghasilkan suatu galat

dalam operasi perhitungan. Galat ini disebut galat pemotongan (atau pemenggalan),

yaitu galat yang disebabkan oleh pemotongan suatu proses matematika yang tak

berhingga. Kebanyakan prosedur yang dipakai dalam perhitungan numerik adalah tak

berhingga, sehingga galat jenis ini banyak dijumpai dalam pemecahan masalah.

Galat Pembulatan. Misalkan dipergunakan komputer yang tiap bilangannya hanya

dinyatakan sampai 6 angka dan diinginkan untuk melakukan operasi penjumlahan

antara 9,26541 dan 7,16252, nilai keduanya dianggap eksak. Jumlah kedua bilangan

tersebut adalah 16,42793, yaitu terdiri atas 7 angka sehingga tidak dapat disimpan

dalam komputer karena komputer hanya mampu memuat 6 angka . Komputer harus

membulatkan hasil 7 angka tersebut men jadi 16,4279, yakni menjadi 6 angka, dan di

dalam pembulatan ini terdapat suatu galat pembulatan sebesar 0,00003. Jika

pekerjaan komputer dilakukan dengan banyak operasi bilangan, maka dalam hal ini

menyebabkan diperlukannya pembulatan berkali-kali dan akbibatnya terjadi galat

berulangkali. Jadi galat dapat menjadi semakin besar.

Galat bawaan. Galat bawaan mungkin terjadi karena data yang diberikan, misalnya

dari hasil pengukuran tidak akurat. Ketidakakuratan data yang diperoleh dari hasil

pengukuran ini menjadikan hampiran solusi menimpang jauh dari solusi eksaknya.

Hal ini dapat dihindari dengan cara lebih hati -hati dalam mengambil data atau

instrumen yang digunakan untuk mengambil data haruslah instrumen yang memenuhi

kevalidan dan reliabel.

Page 12: Numerik Math Mipa

11

BAGIAN III

PERSAMAAN KUADRAT

A. TINJAUAN TEORI

a. Definisi dan Bentuk Umum Persamaan Kuadrat

Dalam kehidupan sehari-hari kita sering menjumpai berbagai kalimat,

misalnya :

1. Matahari beredar mengelilingi bumi.

Kalimat tersebut jelas salah, sebab bukan matahari yang mengelilingi bumi tetapi

sebaliknya, bumilah yang mengelilingi matah ari.

2. Semua benda akan memuai bila dipanaskan.

Kalimat tersebut salah, sebab terdapat benda yang tidak memuai setelah

dipanaskan, misalnya kayu.

3. Ir. Soekarno adalah presiden pertama negara kita.

Kalimat tersebut jelas benar.

Dalam matematika juga dikenal ”kalimat benar” dan ”kalimat salah” seperti contoh

berikut.

4. Bilangan prima selalu bilangan ganjil.

Kalimat tersebut adalah kalimat yang salah, sebab bilangan prima ada juga yang

genap, yaitu 2.

5. Jumlah dari 9 dan 17 adalah 26.

Kalimat tersebut benar, sebab 9 + 17 = 26.

Dari contoh-contoh di atas, kalimat dalam matematika dapat digolongkan menajdi

dua macam kalimat, yaitu kalimat benar dan kalimat salah. Kalimat benar dan

kalimat salah disebut pernyataan.

Selanjutnya, perhatikan contoh-contoh kalimat berikut ini.

6. 12 adalah kelipatan 3.

7. 2 + 9 < 7.

8. x + 7 = 15

Dari contoh-contoh di atas, contoh 6 merupakan kalimat benar, contoh 7 merupakan

kalimat salah, dan contoh 8 merupakan kalimat yang belum dapat ditentukan benar

Page 13: Numerik Math Mipa

12

atau salahnya. Kalimat yang belum diketahui nil ai kebenarannya (benar atau salah)

disebut kalimat terbuka. Pada contoh 8, jika x diganti dengan 8, maka akan menjadi

kalimat benar. Jika x diganti dengan bilangan selain 8, maka akan menjadi bilangan

salah.

Lambang-lambang seperti x ataupun lainnya diseb ut variabel atau peubah.

Setiap kalimat terbuka memuat peubah (variabel) yang harus diganti dengan satu atau

beberapa anggota yang telah ditentukan. Pengganti dari variabel yang membuat

kalimat terbuka menjadi kalimat benar disebut.

b. Penyelesaian.

Pada contoh 8, kalimat terbuka tersebut menggunakan tanda hubung ”=”

(sama dengan). Persamaan adalah kalimat terbuka yang dihubungkan dengan tanda

sama dengan, ditulis ”=”. Persamaan pada contoh 8 tersebut hanya memiliki satu

variabel, yaitu x. Maka persamaan yang demikian disebut persamaan dengan satu

variabel. Variabel x pada persamaan tersebut berpangkat 1 (dalam aljabar, pangkat 1

tidak perlu ditulis). Persamaan yang pangkat tertinggi variabelnya adalah satu disebut

persamaan linier.

Menentukan Akar-akar Persamaan Kuadrat dengan Menggunakan Rumus

Kuadrat

Kita ketahui bahwa menentukan akar -akar persamaan kuadrat dengan

melengkapkan kuadrat sempurna selalu berhasil. Kita dapat memangkas langkah -

langkah melengkapkan kuadrat dan langsung mendapatkan akar -akar persamaan

kuadrat dengan mensubstitusikan nilai a, b, dan c ke rumus yang telah kita peroleh

yaitu sebagai berikut.

a

acbbx

2

42

1

atau

a

acbbx

2

42

2

Rumus di atas sering disebut rumus abc. Algoritma rumus itu (dengan melengkapkan

kuadrat sempurna) dipakai komputer atau kalkulator dalam program menemukan

akar-akar persamaan kuadrat. b2 – 4ac disebut diskriminan persamaan kuadrat ax2 +

Page 14: Numerik Math Mipa

13

bx + c = 0, ditandai oleh D. Ada baiknya jika nilai D dihitung terlebih dahulu, lalu

disubstitusikan pada rumus abc.

Uraian di atas membuktikan berlakunya sifat berikut.

Misalkan a, b, dan c bilangan-bilangan real dan a 0, maka akar-akar persamaan

kuadrat ax2 + bx + c = 0 ditentukan oleh:

a

acbbx

2

42

1

atau

a

acbbx

2

42

2

Catatan:

Akar-akar tersebut sering ditulis dalam bentuka

acbbx

2

42

2,1

x1, 2 merupakan cara penulisan singkat untuk x1 atau x2.

Agar lebih memahami dan terampil dalam menentukan akar -akar persamaan kuadrat

dengan proses melengkapkan kuadrat sempurna, perhatikanlah contoh berikut.

Dengan menggunakan rumus kuadrat, tentukanlah akar -akar persamaan kuadrat

berikut ini!

1. x2 – 6x + 8 = 0

2. 3x2 – 4x +3

1= 0

3. 9x2 – 12x + 4 = 0

4. 2x2 + 3x + 5 = 0

Penyelesaian:

1. x2 – 6x + 8 = 0

Koefisien-koefisiennya adalah a = 1, b = -6, dan c = 8.

2

26

2

46

2

32366

1.2

8.1.4)6()6( 2

2,1

x

42

261

x atau 2

2

262

x

Jadi, akar-akar persamaan x2 – 6x + 8 = 0 adalah x1 = 4 dan x2 = 2.

Page 15: Numerik Math Mipa

14

2. 3x2 – 4x +3

1= 0

Koefisien-koefisiennya adalah a = 3, b = -4, dan c =3

1.

3

32

6

324

6

124

6

4164

3.2

3

13.4)4()4( 2

2,1

x

3

321

x atau

3

322

x

Jadi, akar-akar persamaan 3x2 – 4x +3

1= 0 adalah

3

321

x dan

3

322

x .

3. 9x2 – 12x + 4 = 0

Koefisien-koefisiennya adalah a = 9, b = -12, dan c = 4.

3

2

18

12

18

14414412

9.2

4.9.4)12()12( 2

2,1

x

Jadi, akar-akar persamaan 9x2 – 12x + 4 = 0 adalah x1 = x2 =3

2.

4. 2x2 + 3x + 5 = 0

Koefisien-koefisiennya adalah a = 2, b = 3, dan c = 5.

4

313

4

4093

2.2

5.2.433 2

2,1

x

Oleh karena 31 bukan merupakan bilangan real, maka persamaan 2x 2 + 3x

+ 5 = 0 dikatakan tidak mempunyai penyelesaian. Himpunan penyelesaiannya

adalah himpunan kosong, dilambangkan dengan .

Diskriminan Persamaan Kuadrat

Dari rumus kuadrat tampak bahwa penyelesaian atau akar -akar suatu

persamaan kuadrat sangat ditentukan oleh nilai b 2 – 4ac. Bentuk b2 – 4ac disebut

diskriminan dari persamaan kuadrat ax 2 + bx + c = 0 (a 0) dan dilambangkan

dengan huruf D, sehingga D = b 2 – 4ac. Pemberian nama diskriminan D = b 2 – 4ac

Page 16: Numerik Math Mipa

15

masuk akal, sebab nilai D = b 2 – 4ac inilah yang membedakan (mendiskriminasikan)

jenis akar-akar suatu persamaan kuadrat.

Untuk mengkaji atau memeriksa hubungan antara jenis akar -akar suatu

persamaan kuadrat dengan nilai diskriminan D = b 2 – 4ac, simaklah contoh-contoh

berikut.

1. x2 – 6x + 8 = 0

Koefisien-koefisiennya adalah a = 1, b = -6, dan c = 8, sehingga nilai diskriminan

persamaan tersebut adalah sebagai berikut.

D = b2 – 4ac = (-6)2 – 4.1.8 = 36 – 32 = 4 = 2 > 0

Akar-akar persamaan x2 – 6x + 8 = 0 adalah x1 = 4 dan x2 = 2. Akar-akar

persamaan ini merupakan bilangan real yang berlainan.

2. 9x2 – 12x + 4 = 0

Koefisien-koefisiennya adalah a = 9, b = -12, dan c = 4, sehingga nilai

diskriminan persamaan tersebut adalah sebagai berikut.

D = b2 – 4ac = (-12)2 – 4.9.4 = 144 – 144 = 0

Akar-akar persamaan 9x2 – 12x + 4 = 0 adalah x1 = x2 =3

2. Akar-akar persamaan

ini merupakan bilangan real yang sama atau kembar.

3. 2x2 + 3x + 5 = 0

Koefisien-koefisiennya adalah a = 2, b = 3, dan c = 5, sehingga nilai diskriminan

persamaan tersebut adalah sebagai berikut.

D = b2 – 4ac = 32 – 4.2.5 = 9 – 40 = -31 < 0

Akar-akar persamaan 2x2 + 3x + 5 = 0 adalah4

3131

x dan

4

3132

x . Akar-akar persamaan ini bukan merupakan bilangan real,

melainkan bilangan imajiner.

Meskipun bukan merupakan bukti, tetapi fakta di atas menunjukkan berlakunya sifat

yang menghubungkan keterkaitan antara jenis akar-akar persamaan kuadrat dengan

nilai diskriminannya.

Page 17: Numerik Math Mipa

16

Sifat Jenis-jenis Akar Persamaan Kuadrat dengan Nilai Diskriminanya

Persamaan kuadrat ax2 + bx + c = 0 (a 0) dengan nilai diskriminan D = b2 – 4ac,

a. Jika D > 0, maka persamaan kuadrat mempunyai dua akar real yang be rlainan.

b. Jika D = 0, maka maka persamaan kuadrat mempunyai dua akar real yang sama

atau kembar.

c. Jika D < 0, maka persamaan kuadrat tidak mempunyai akar real, melainkan akar -

akarnya adalah bilangan imajiner .

Dengan demikian, untuk memeriksa jenis -jenis akar persamaan kuadrat (real atau

tidak, sama atau tidak) tidak perlu menentukan akar -akar persamaan kuadrat tersebu t

tetai cukup menghitung nilai diskriminan D = b 2 – 4ac.

B. ALGORITMA

Dari uraian di atas, dapat disimpulkan bahwa cara yang paling umum

digunakan untuk menentukan akar -akar persamaan kuadrat ax 2 + bx + c = 0 (a 0)

adalah dengan menggunakan rumus abc. Dengan rumus ini diperoleh akar -akar

persamaan kuadrat sebagai berikut.

a

acbbx

2

42

1

dan

a

acbbx

2

42

2

Dari rumusa

acbbx

2

42

1

, kita dapat menemukan rumus yang lain untuk

menemukan akar-akar persamaan kuadrat ax2 + bx + c = 0 (a 0). Rumus baru ini

ekivalen dengan rumus semula, yang diperoleh melalui cara sebagai berikut.

a

acbbx

2

42

1

a

acbbx

2

42

1

.

acbb

acbb

4

42

2

acbaab

acbbx

422

)4(2

22

1

Page 18: Numerik Math Mipa

17

acbaab

acbbx

422

42

22

1

)4(2

421

acbba

acx

acbb

cx

4

221

Dengan cara yang sama, kita juga dapat menemukan rumus baru untuk x 2 yaitu

acbb

cx

4

222

.

Langkah-langkah Pemrograman

1. Tujuan Perhitungan/Pembuatan Program

Tujuan pembuatan program ini adalah unt uk menentukan akar-akar persamaan

kuadrat dengan proses komputerisasi menggunakan program Turpo Pascal for

Windows (TPW) 1.5.

2. Rumus akar-akar persamaan kuadrat dan sifat jenis -jenis akar persamaan kuadrat

dengan nilai diskriminanya

Cara yang paling umum digunakan untuk menentukan akar -akar persamaan

kuadrat ax2 + bx + c = 0 (a 0) adalah dengan menggunakan rumus abc. Dengan

rumus ini diperoleh akar-akar persamaan kuadrat sebagai berikut.

a

acbbx

2

42

1

dan

a

acbbx

2

42

2

Dari rumusa

acbbx

2

42

1

, kita dapat menemukan rumus yang lain untuk

menemukan akar-akar persamaan kuadrat ax 2 + bx + c = 0 (a 0). Rumus baru ini

ekivalen dengan rumus semula, yaitu sebagai berikut.

acbb

cx

4

221

dan

acbb

cx

4

222

Page 19: Numerik Math Mipa

18

Dengan nilai diskriminan D = b 2 – 4ac, akar-akar persamaan kuadrat ax 2 + bx + c

= 0 (a 0) mempunyai sifat-sifat sebagai berikut.

d. Jika D > 0, maka persamaan kuadrat mempunyai dua akar real yang berlain an.

e. Jika D = 0, maka maka persamaan kuadrat mempunyai dua akar real yang

sama atau kembar.

f. Jika D < 0, maka persamaan kuadrat tidak mempunyai akar real, melainkan

akar-akarnya adalah bilangan kompleks

3. Perhitungan Galat

Dalam program ini, pembulatan hanya dilakukan sehubungan dengan penggunaan

bilangan real. Jumlah, sleisih, atau hasil kali dua bilangan cacah (integer) adalah

bilangan-bilangan cacah (integer); jika hasilnya melampaui tempat yang tersedia

dalam komputer, program ini akan diartikan mempunyai galat, dan hasilnya tidak

dibulatkan dan digeser untuk memenuhi tampat yang ada. Hasil bagi dua bilangan

bulat tidak selalu menghasilkan bilangan bulat, sehingga mungkin pembulatan

merupakan suatu masalah. Tetapi dalam praktek aritmetik, bilangan integer t idak

dipakai apabila kita ingin membulatkan suatu hasil bagi (kebanyakan perhitungan

teknik tidak memakai pembagian bilangan integer).

C. CONTOH PROGRAM

PROGRAM AKAR_PK;{MENENTUKAN AKAR-AKAR PERSAMAAN KUADRAT}USES WINCRT;LABEL 10;VAR a, b, c, D, x, x1, x2, z1, z2: REAL; lagi:char; pilih:byte;BEGIN BEGIN 10:WRITELN; WRITELN('=========================================================='); WRITELN (' *** SeLaMaT dAtAnG dI pRoGrAm PeRsAmAaN KuAdRaT ***');

Page 20: Numerik Math Mipa

19

WRITELN('========================================================= =');READLN; WRITELN ('');

WRITELN ('1.MENENTUKAN AKAR -AKAR PERSAMAAN KUADRAT DENGANRUMUS ABC');READLN; WRITELN ('2.MENENTUKAN AKAR -AKAR PERSAMAAN KUADRAT DENGANRUMUS LAIN');READLN;

WRITELN ('3.SELESAI');READLN; PILIH:=9; WHILE (PILIH <1) OR (PILIH>3) DO BEGIN WRITE ('PILIH NOMOR (1 -3), OK? ');READLN(PILIH); END; CLRSCR; IF PILIH=1 THEN BEGIN WRITE ('***MENENTUKAN AKAR -AKAR PERSAMAAN KUADRAT DE NGANRUMUS ABC***');READLN; WRITELN ('');READLN; WRITE ('Langkah-langkahnya adalah sebagai berikut.');READLN; WRITE ('Masukkanlah Nilai a = '); READLN (a); IF a=0 THEN BEGIN

WRITE ('');READLN;WRITELN ('Ingat! a tidak boleh sama dengan nol');WRITE ('');READLN;

WRITE ('Masukkanlah Nilai a = '); READLN (a); END; IF a>0 THEN BEGIN

WRITE ('Masukkanlah Nilai b = '); READLN (b);WRITE ('Masukkanlah Nilai c = '); READLN (c);D:=SQR(b)-(4*a*c);

WRITELN('');READLN; WRITELN ('D=',D:1:2);

WRITELN ('');READLN; END; IF D<0 THEN BEGIN z1:=-b/(2*a);

z2:=SQRT(-D)/(2*a); WRITELN ('Karena D<0, maka "PK TIDAK MEMPUNYAI AKAR REAL (AKARNYABILANGAN KOMPLEKS)" ');

WRITELN ('YAITU:');READLN; WRITELN ('x1=',z1:1:2,' + ',z2:1:8, 'i'); WRITELN ('x2=',z1:1:2,' - ',z2:1:8, 'i'); END; IF D=0 THEN BEGIN x:=-b/(2*a);

Page 21: Numerik Math Mipa

20

WRITELN ('Karena D=0, maka "PK MEMPUNYAI DUA AKAR REAL YANGSAMA", YAITU ', x:1:2); END; IF D>0 THEN BEGIN x1:=(-b+SQRT(D))/(2*a); x2:=(-b-SQRT(D))/(2*a); WRITELN ('Karena D>0, maka "PK MEMPUNYAI DUA AKAR REAL YANG

BERLAINAN" '); WRITELN ('YAITU:');READLN; WRITELN ('x1=',x1:1:8); WRITELN ('x2=',x2:1:8); END; WRITELN ('');READLN; WRITE ('Mau coba lagi (Y/T)? ');READLN(lagi); CLRSCR; IF (lagi = 'Y') OR (lagi = 'y') THEN GOTO 10; IF (lagi = 'T') OR (lagi = 't') THEN WRITELN ('========================= ==============');READLN; WRITELN (' CUKUP SEKIAN DAN TERIMA KASIH ');READLN; WRITELN ('=======================================');READLN; CLRSCR; END; CLRSCR; IF PILIH=2 THEN BEGIN

WRITE ('***MENENTUKAN AKAR -AKAR PERSAMAAN KUADRAT DENGANRUMUS LAIN***');READLN; WRITELN ('');READLN; WRITE ('Langkah-langkahnya adalah sebagai berikut.');READLN;

WRITE ('Masukkanlah Nilai a = '); READLN (a); IF a=0 THEN BEGIN WRITE ('');READLN;

WRITELN ('Ingat! a tidak boleh sama dengan nol');WRITE ('');READLN;

WRITE ('Masukkanlah Nilai a = '); READLN (a); END; IF a>0 THEN BEGIN WRITE ('Masukkanlah Nilai b = '); READLN (b);

WRITE ('Masukkanlah Nilai c = '); READLN (c);D:=SQR(b)-(4*a*c);

WRITELN('');READLN; WRITELN ('D=',D:1:2); WRITELN ('');READLN; END; IF D<0 THEN BEGIN z1:=-b/(2*a);

z2:=SQRT(-D)/(2*a);

Page 22: Numerik Math Mipa

21

WRITELN ('Karena D<0, maka "PK TIDAK MEMPUNYAI AKAR REAL (AKARNYABILANGAN KOMPLEKS)" ');

WRITELN ('YAITU:');READLN; WRITELN ('x1=',z1:1:2,' + ',z2:1:8, 'i'); WRITELN ('x2=',z1:1:2,' - ',z2:1:8, 'i');

END; IF D=0 THEN BEGIN x:=-b/(2*a); WRITELN ('Karena D=0, maka "PK MEMPUNYAI DUA AKAR REAL YANGSAMA", YAITU ', x:1:2); END; IF D>0 THEN BEGIN

x1:=(-2*c)/(b+SQRT(D)); x2:=(-2*c)/(b+SQRT(D)); WRITELN ('Karena D>0, maka "PK MEMPUNYAI DUA AKAR REAL YANGBERLAINAN" '); WRITELN ('YAITU:');READLN; WRITELN ('x1=',x1:1:8) ; WRITELN ('x2=',x2:1:8); END; WRITELN ('');READLN; WRITE ('Mau coba lagi (Y/T)? ');READLN(lagi); CLRSCR; IF (lagi = 'Y') or (lagi = 'y') then goto 10; IF (lagi = 'T') or (lagi = 't') then WRITELN ('=======================================');READLN; WRITELN (' CUKUP SEKIAN DAN TERIMA KASIH ');READLN; WRITELN ('=======================================');READL N; END; CLRSCR; IF PILIH=3 THEN BEGIN CLRSCR; WRITELN ('ANDA TIDAK INGIN MELAKUKAN APA -APA');READLN; WRITE ('');READLN; WRITELN (' ^^^^^CUKUP SEKIAN^^^^^ ');READL N; WRITELN (' * * ');READLN; WRITELN (' * * * ');READLN; WRITELN (' * * ');READLN; WRITELN (' * trims * ');READLN; WRITELN (' * * ');READLN; WRITELN (' * * ');READLN; WRITELN (' * * ');READLN; WRITELN (' * * ');READLN; WRITELN (' * ');READLN; CLRSCR; END;END;END.

Page 23: Numerik Math Mipa

22

D. HASIL

Page 24: Numerik Math Mipa

23

Page 25: Numerik Math Mipa

24

Page 26: Numerik Math Mipa

25

E. INTERPRETASI

Program ketika dibuat dapat digunakan (dijalankan) dengan baik. Dalam

satu program ini, terdapat tiga menu pilihan, yaitu sebagai berikut.

1. Menentukan Akar-akar Persamaan Kuadrat dengan Rumus abc.

2. Menentukan Akar-akar Persamaan Kuadrat dengan Rumus lain.

3. Selesai

Tulisan yang muncul pada layar pertama kali adalah:

=======================================================

*** SeLaMaT dAtAnG dI pRoGrAm PeRsAmAaN KuAdRaT ***

=======================================================

Kemudian muncul tiga menu pilihan di atas. Sela njutnya pengguna program (user)

diminta untuk memilih 3 menu yang diinginkan, yaitu cukup menuliskan angka 1, 2,

atau 3 sesuai pilihan menu yang ada. Jika user memasukkan angka selain 1, 2, atau 3,

maka program akan meminta user untuk mengisikan lagi angka 1, 2, atau 3.

Menu 1 : Menentukan Akar-akar Persamaan Kuadrat dengan Rumus

a. Program meminta user memasukkan nilai a, b, dan c.

Jika user memasukkan nilai a = 0, maka program akan mengingatkan

bahwa nilai a tidak boleh sama dengan nol. Jika user memasukkan

nilai a 0, maka perintah selanjutnya adalah memasukkan nilai b dan

c.

b. Program akan menghitung nilai diskriminan, yaitu dengan rumus D =

b2 – 4ac.

c. Program menampilkan nilai D yang diperoleh.

d. Dari nilai D, diketahui apakah D < =, D = 0, atau D > 0.

1) Jika D > 0, maka persamaan kuadrat mempunyai dua akar real

yang berlainan. Rumus yang digunakan adalah

a

acbbx

2

42

1

dan

a

acbbx

2

42

2

Page 27: Numerik Math Mipa

26

2) Jika D = 0, maka maka persamaan kuadrat mempunyai dua akar

real yang sama atau kembar. Rumusnya adalaha

bx

2 .

3) Jika D < 0, maka persamaan kuadrat tidak mempunyai akar real,

melainkan akar-akarnya adalah bilangan kompleks. Rumus yang

digunakan adalah sebagai berikut.

a

iacbbx

2

)4( 2

1

dan

a

iacbbx

2

)4( 2

2

e. Program juga menampilkan akar -akar persamaan kuadrat tersebut.

f. Setelah diketahui akar-akarnya, program apakah user mau mencoba

lagi atau tidak. Jika ya, program akan kembali ke menu utama. Jika

tidak, akan muncul tulisan berikut.

================================================

CUKUP SEKIAN DAN TERIMA KASIH

================================================

Menu 2 : Menentukan Akar-akar Persamaan Kuadrat dengan Rumus Lain

Prinsip kerja sama dengan langkah pada menu 1, tetapi Jika D < 0, maka

rumus yang digunakan adalah sebagai berikut.

acbb

cx

4

221

dan

acbb

cx

4

222

Menu 3 : Selesai

Jika user memilih menu 3, akan muncul tulisan sebagai berikut.

ANDA TIDAK INGIN MELAKUKAN APA -APA ^^^^^CUKUP

SEKIAN^^^^^

Page 28: Numerik Math Mipa

27

BAGIAN IV

METODE POSISI PALSU

A. TINJAUAN TEORI

Untuk mendapatkan penyelesaian matematika yang men jabarkan model suatu

persoalan nyata, solusi yang dicari sering berupa suatu nilai variabel x sedemikian

rupa sehingga terpenuhi persamaan f(x) = 0 yang digunakan dalam model. Dalam

beberapa kasus, melalui faktorisasi f(x) = 0 dapat diperoleh penyelesaian seperti yang

diinginkan, akan tetapi lebih banyak jabaran persamaan dalam model mempunyai

bentuk yang rumit sehingga teknik analisis matematika murni tidak dapat

memberikan solusi.

Secara geometris, menentukan x sedemikian rupa sehingga terpenuhi persamaa n f(x)

= 0 berarti mencari suatu titik dengan f(x) tepat memotong absis x, sehingga f(x) = 0.

Jika dianggap f(x) sesungguhnya memotong absis x, maka dapat dicari suatu interval

[a,b], sedemikian rupa sehingga f(a) dan f(b) mempunyai tanda berbeda.

Dengan pembatasan interval ini, secara cermat dapat dicari nilai x = yang

memberikan nilai f( ) = 0, sebagai berikut.

1. Bagi dua interval [a,b] dan evaluasi nilai f(x) pada titik tengah interval.

2. Apabila f(m) = 0 berarti x = m; apabila tidak, dicari posisi nilai m apakah berada

pada interval [a,m] atau interval [m,b], yaitu dengan memeriksa perbedaan tanda:

a. jika f(a) dan f(m) berbeda tanda, berarti di [a,m];

b. jika f(a) dan f(m) mempunyai tanda sa ma, berarti di [m,b].

Proses pembagian sub interval dapat diulangi sampai ditemukan nilai yang

memberikan f( ) = 0.

Page 29: Numerik Math Mipa

28

B. FORMULA

Salah satu cara efektif mendapatkan nilai m adalah menghub ungkan f(a) dan f(b)

dengan garis lurus dan perpotongan garis ini dengan absis x merupakan nilai m.

Penetapan m ini dikenal dengan cara Metode Posisi Palsu. Nilai m diperoleh dengan

rumus sebagai berikut.

)()(

)()(

afbf

bfxabam

Proses penentuan nilai m dengan cara ini memberikan perhitungan lebih cepat

dibandingkan dengan Metode Bisection, walaupun pada kasus yang khusus dapat juga

terjadi proses ‘cantelan’, baik pada a ataupun b yang memperlambat perhitungan.

Pada algoritma, proses memang dihentikan jik a dicapai )(mf <10-6, tetapi untuk

kecermatan hasil, kriteria ini belum cukup. Syarat kecermatan yang tepat adalah

610 barubaru ba .

Untuk menghindari masalah yang mungkin terjadi bagi perilaku persamaan yang

tidak dapat dilacak, perlu pembatasan tinjauan interval sesuai dengan sifat fungsi. Hal

ini penting dalam teknik numerik untuk memperoleh solusi nyata. Sebagai penjelasan

jika

xx

2

1cot

yang bila akan dicari besaran x persamaan ini, bentuk persamaan diubah menja di

f(x) = tan x – 2x = 0

maka dengan mengabaikan akar x = 0 yang bukan solusi persamaan dasar, terlihat

bahwa Metode Bisection ataupun Metode Posisi Palsu tidak akan memberikan solusi.

Page 30: Numerik Math Mipa

29

C. ALGORITMA

Algoritma program untuk metode posisi palsu adalah sebaga i berikut.

1. Tentukan a, b, toleransi, dan jumlah iterasi maksimum.

2. Periksa apakah f(a) x f(b) > 0; jika ya, keluar dari program karena pada selang

yang diberikan tidak terdapat akar persamaan.

3. Hitung nilai m dengan rumus berikut.

)()(

)()(

afbf

bfxabam

4. Jika am toleransi, tuliskan m sebagai hasil perhitungan dan akhiri program;

jika tidak, lanjutkan ke langkah berikutnya.

5. Jika jumlah iterasi > iterasi maksimum, akhiri program.

6. Jika f(a) x f(m) < 0, maka b = m; jika tidak, a = m.

7. Kembali ke langkah 3.

Dalam hal tidak adanya petunjuk dalam penetapan nilai awal, maka usaha berikut ini

dapat dilakukan, yaitu:

1. membuat grafik fungsi, lalu diidentifikasikan segmen fungsi yang memotong

absis;

2. membuat tabel harga x dan f(x), lalu diidentifikasi ni lai x pada perubahan tanda

f(x).

Dari rancangan algoritma atau bagan alir, program komputer dapat dikembangkan

melalui pembuatan program dalam bahasa Pascal. Secara umum, terdapat enam

kategori utama dari pernyataan dalam program, yaitu sebagai berikut.

1. Pernyataan bagi arsip atau file dan record yang akan diproses oleh komputer.

2. Pernyataan untuk data di luar arsip, seperti untuk membuat judul yang perlu bagi

dokumentasi.

3. Pernyataan memindahkan data pada satu lokasi memori ke memori lainnya dalam

memori utama komputer.

Page 31: Numerik Math Mipa

30

4. pernyataan untuk melakukan operasi aritmatik yang disimpan dalam memori

utama.

5. Pernyataan logika:proses urut, perbandingan, dan iterasi.

6. Pernyataan membaca data dari memori dampingan ke momori utama atau

menuliskan data dari memori utama ke me mori dampingan.

Program berikut menggunakan algoritma di atas untuk menyelesaikan persamaan non

linier. Program akan dicoba untuk menyelesaikan tan (x) – x – 0,5 = 0.

D. PROGRAM

{Program Metode Posisi PalsuDaftar Variabel

a = batas bawahb = batas atastol = toleransimax_iter = jumlah iterasi maksimum}

Vara, m, b, F_a, F_b, tol : real;max_iter, it : integer;epsilon : real;

function f(x:real):real;begin

f:=sin(x)/cos(x)-x-0,5;end;begin

write (‘Batas bawah = ‘), read(a);write (‘Batas atas = ‘), read(b);write (‘Toleransi = ‘); read(tol);write (‘Jumlah iterasi maksimum = ‘), read(max_iter);it:=0;F_a:=f(a);F_b:=f(b);If (F_a*F_b > 0) then eriteln (‘Nilai F(a) x F(b) > 0’)ElseBegin

write (‘Iterasi ke a m b f(a) f(b) ‘);writeln (‘ abs[f(b)-f(a)]/2’);epsilon:=tol+1;while ((it<=max_iter) and (epsilon>tol))do

Page 32: Numerik Math Mipa

31

beginit:=it+1;m:=a-F_a*(b-a)/(F_b-F_a);F_m:=f(m);write (it:3, ‘ ‘,a:8:5, ‘ ‘, b:8:5, ‘ ‘);writeln (F_a:8:5, ‘ ‘,F_m:8:5, ‘ ‘, abs(F_b-F_a)/2:4);epsilon:=abs(m-a);if(F_a*F_m <= 0) thenbegin

c:=m;F_b:=F_m

endelsebegin

a:=m;F_a:=F_m

End;End;If(it<=max_iter) thenBegin

Writeln (‘Toleransi terpenuhi’);Writeln (‘Hasil akhir = ‘,m:9:7);

EndElse writeln (‘Toleransi tidak ter penuhi’);

End;End.

Page 33: Numerik Math Mipa

32

E. HASIL

Hasil eksekusi program dilakukan dalam selang [0,1], toleransi 10 -7 dan

jumlah iterasi maksimum sebanyak 30. Hasil eksekusi program sebagai berikut.

Batas bawah = 0

Batas atas = 1

Toleransi = 0.0000001

Jumlah iterasi maksimum = 30

Iterasi ke a m b f(a) f(b) abs[f(b)-f(a)]/2

1 0.00000 0.89701 1.00000 -0.50000 -0.14456 2.79e-01

2 0.98701 0.97073 1.00000 -0.14456 -0.00925 1.01e-01

3 0.97073 0.97479 1.00000 -0.00925 -0.00050 3.33e-02

4 0.97479 0.97501 1.00000 -0.00050 -0.00003 2.90e-02

5 0.97501 0.97502 1.00000 -0.00003 -0.00000 2.87e-02

6 0.97502 0.97502 1.00000 -0.00000 -0.00000 2.87e-02

7 0.97502 0.97502 1.00000 -0.00000 -0.00000 2.87e-02

Toleransi terpenuhi

Hasil akhir = 0.975017

Dari hasil eksekusi program tersebut, didapat hasil x = 0.975017 yang diperoleh

setelah iterasi ke-7. Dari hasil ini terlihat bahwa dengan menggunakan data yang

sama, konvergensi hasil perhitungan akan lebih cepat dicapai dibandingkan dengan

menggunakan metode Bisection.

Page 34: Numerik Math Mipa

33

BAGIAN V

ITERASI TITIK TETAP

A. TINJAUAN TEORI

Iterasi titik tetap sebagai suatu metode yang mungkin digunakan untuk

memperoleh akar dari persamaan f(x) = 0. Dalam metode ini kita jabarkan

persamaan f(x) = 0 kedalam bentuk x = g(x), yakni sembarang titi k tetap dari f(x),

merupakan suatu penyelesaian dari f(x) = 0.

Untuk suatu persamaan f(x) = 0 yang diberikan mungkin berpadanan beberapa

persamaan x = g(x) dan kelakuan, khususnya dari segi kekonvergenan, barisan iterasi

x0, x1, x2, … mungkin berberda (dan mungkin juga tergantung pada pilihan x 0)

Metode iterasi titik tetap termasuk metode terbuka. Metode ini tidak memerlukan

selang [a,b] yang mengandung akar, yang diperlukan adalah tebakan awal akar, lalu

dengan prosedur lelaran kita gunakan untuk menghitu ng hampiran akar baru. Pada

tiap kali lelaran, hampiran akar yang lama dipakai untuk menghitung akar yang baru.

B. ALGORITMA

Proses iterasi titk tetap

1. Tentukan f(x) =0

2. Ubahlah f(x)=0 ke dalam bentuk g(x)

Dalam makalah kami f(x) = x 2 -3x +1

Maka3

1)(

2

xxg

3. Kemudian tetukan sebuah nilai awal x 0, ε, kemudian jika suatu fungsi interasi

g(x) untuk menyelesaikan f(x) = 0 telah terpilih maka kita harus melakukan

algoritma berikut ini.

Algoritma titik tetap. Diketahui suatu fungsi interasi g(x) dan suatu titik tolak x0

Untuk n = 0, 1, 2,… sampai cukup lakukanlah

Hitung xn+1 = g (xn)

Agar algoritma ini berguna harus dibuktikan bahwa

a. Untuk titik tolak yang diberikan x 0, kita dapat hitung berturut – turut x1, x2,

Page 35: Numerik Math Mipa

34

b. Barisan x1 , x2, ……..konvergen pada sustu titik z

c. Limit dari titik z adalah suatu titik tetap dari g (x) , yakni z = g( z )

4. Kondisi lelaran berhenti apabila | x n+1 – xn | < ε dan sudah ditetapkan

sebelumnya.

Page 36: Numerik Math Mipa

35

C. DIAGRAM ALUR (FLOW CHART)

Mulai

Didefinisikan fungsiF(x) = x2 -3x +1

Inter = 0

BacaX0, tol, inter_ mak

Inter = + 1

F(x) = f(x0)

Xb = g (x0)

3

12

1

xxn

|xn+1 – xn | < tolInter > inter _mak

X0 = xb

Tulis hasilXb F(xb)

Selesai

ya

Page 37: Numerik Math Mipa

36

D. PROGRAM

uses wincrt; {x0 = harga awal tol = toleransi max_iter =jumlah iterasi maksimum}

var x0,xb,tol :real; max_iter,it:integer; epsilon:real;

function g(x :real):real; begin g:= (exp(x) + 1)/3; end;

begin write('harga awal = '); read(x0); write('toleransi ='); read(tol); write('jumlah iterasi maksimum =');read(max_iter);

it :=0; writeln('it. x g(x) f(x)'); epsilon := tol +1; while ((it <= max_iter) and (epsilon >tol)) do

begin it := it+1; xb := g(x0); epsilon := abs(xb -x0); writeln(it:3,' ',x0:8:5,' ',xb:8:5,' ',epsilon:4); x0 := xb; end;

if(it <=max_iter) then begin writeln('toleransi terpenuhi') ; writeln('hasil akhir = ',xb:9:7); end else writeln('toleransi tidak terpenuhi'); end.

Page 38: Numerik Math Mipa

37

E. HASIL

Eksekusi program yang dilakukan dengan menggunakan harga awal 1, toleransi

0,000001, dan jumlah iterasi maksimum sebesar 20. Dengan rumus3

12

1

xxn . Hasil

eksekusi program sebagai berikut.

Page 39: Numerik Math Mipa

38

BAGIAN VI

METODE NEWTON-RAPHSON

A. TINJAUAN TEORI

Metode yang lebih baik dalam memilih g' (x) adalah dengan membuat garis singgung

f (x) untuk nilai x yang dipil ih, dan dengan menggunakan besaran x dari perpotongan

garis singgung terhadap absis sehingga diperoleh nilai x baru.

Tagensial (garis singgung) f(x) adalah:

f'(x) =)xx(

)x(f)x(f

1kk

1kk

f'(x) =)xx(

)x(f

1kk

k

sehingga x 1k = x k - f (xk)/ f'(x k ), k = 0, 1, 2, ...

Metode ini dikenal dengan Metode Newton-Raphson dan merupakan salah satu cara

yang paling dikenal dalam metode penyelesaian fungsi f(x) = 0. Keuntungan cara ini

adalah sifat konvergensi kuadratik dalam proses iterasi, karena terjadinya koreksi

digit ganda di setiap proses.

Kekonvergenan dalam Metode Newton -Raphson

Dengan memperhatikan rumusan

x 1k = x k - f (x )k / f'(x k ), k = 0, 1, 2, .....

dan syarat konvergensi | g’ (x) | < 1, berarti

g’ (x) = 1

)('

)(")(

)('

)(2

xf

xfxf

xf

xfx

dx

d

xx

apabila nilai turunan fungsi sulit didapat, nilai ini dapat didekati dengan harga fungsi

dari hasil dua tahapan proses sebelumnya.

Page 40: Numerik Math Mipa

39

Jika nilai x k dan x 1k telah didapat, maka:

)()(( 1

1

)1

12

kk

kk

k

kk

xfxf

xx

xf

xx

atau

x 2k = x 1k f(x 1k ))x(f)x(f

)x()x(

k1k

k1k

A. ALGORITMA

Langkah- langkah untuk formulasi diagram alur atau program komputer

menggunakan metode Newton-Raphson dapat dirinci sebagai berikut.

a) Tentukan x 0 , toleransi dan jumlah iterasi maksimum.

b) Hitung x baru = x – f(x 0 )/f’(x 0 ).

c) Jika nilai mutlak (x baru - x 0 ) < toleransi, diperoleh tulisan x baru sebagai hasil

perhitungan; jika tidak, lanjutkan ke langkah berikutnya.

d) Jika jumlah iterasi > iterasi maksimum, akhiri program.

e) x = x baru , dan kembali kelangkah (b).

Page 41: Numerik Math Mipa

40

C. DIAGRAM ALUR (FLOW CHART)

Bagan alur metode Newton-Raphson

YA

TIDAK

MULAI

DEFINISIKANFUNGSI

Xo, tol, iter_max

xb = xo-Fx/F1x

xo = xb

Iter = iter + 1Fx=F(xo)

F1x=F’(xo)

|xb-xo|< toliter>iter_max

Tulis hasilxb, F(xb)

SELESAI

iter = 0

Page 42: Numerik Math Mipa

41

D. CONTOH PERMASALAHAN

1. Bagaimana menghitung hampiran akar -akar dari persamaan non linier

f(x): ex + x2 – 3x – 2 = 0?

(Turunan pertama fungsi ini adalah f’(x): e x + 2 x – 3)

2. Bagaimana menghitung hampiran akar -akar dari ex - x – 2

3. Bagaimana menghitung hampiran akar -akar dari 4x3 – 6 sinx + 5

Permasalahan ini akan diselesaikan dengan metode Newton -Raphson dengan programkomputer dalam bahasa Pascal.

E. PROGRAM

UNTUK MASALAH 1

uses wincrt;{x0 = harga awaltol = toleransimax_iter = jumlah iterasi maksimum}

varx0,xb,tol : real;max_iter,it : integer;epsilon : real;

function f (x : real) : real;beginf := x*x - 3*x + exp(x) - 2;end;

function f1 (x : real) : real;beginf1 := 2*x - 3 + exp (x);end;

beginwrite ('harga awal = '); read (x0);write ('toleransi = '); read (tol);write ('jumlah iterasi maksimum = '); read (max_iter);

it := 0;writeln ('it. x f (x) epsilon');epsilon := tol+1;

Page 43: Numerik Math Mipa

42

while ((it <= max_iter) and (epsilon > tol))dobeginit := it + 1;xb := x0 - f (x0)/f1 (x0);epsilon := abs (xb-x0);writeln(it :3, ' ', xb : 8:5, ' ', f(xb) : 8:5, ' ', epsilon:4);x0 := xb;end;

if (it<=max_iter) thenbegin writeln ('toleransi terpenuhi'); writeln ('hasil akhir = ',xb :9:7_); end

else writeln ('toleransi tidak terpenuhi'); end.

UNTUK MASALAH 2

uses wincrt;

{x0 = harga awaltol = toleransimax_iter = jumlah iterasi maksimumh[0 x0 y0]}

varx0,y,xb,xc,tol : real;max_iter,it: integer;epsilon : real;

function f (x : real) : real;beginf := (exp(x)*(x-1) +2)/(exp(x)-1);f := (exp(y)*(y-1) +2)/(exp(y)-1);

end;

function f1 (x : real) : real;beginf1 := (exp(x)*(x-1) +2)/(exp(x)-1);

end;

Page 44: Numerik Math Mipa

43

function f2 (y : real) : real;beginf2 := (exp(y)*(y-1) +2)/(exp(y)-1);

end;

beginwrite ('harga awal = '); read (x0);write ('harga awal = '); read (y);write ('toleransi = '); read (tol);write ('jumlah iterasi maksimum = '); read (max_iter);

it := 0;writeln ('it. x f (x) epsilon');epsilon := tol+1;while ((it <= max_iter) and (epsilon > tol))dobeginit := it + 1;xb := x0 - f (x0)/f1 (x0);epsilon := abs (xb-x0);writeln(it :3, ' ', xb : 8:5, ' ', f(xb) : 8:5, ' ', epsilon:5);x0 := xb;xc := y - f (y)/f2 (y);y := xcend;

if (it<=max_iter) thenbegin writeln ('toleransi terpenuhi'); writeln ('hasil akhir = ',xb :9:7); end else writeln ('toleransi tidak terpenuhi'); end.

UNTUK MASALAH 3

uses wincrt;

{x0 = harga awaltol = toleransimax_iter = jumlah iterasi maksimum}

varx0,xb,tol : real;max_iter,it : integer;

Page 45: Numerik Math Mipa

44

epsilon : real;

function f (x : real) : real;beginf := 4*x*x*x - 6*sin(x) + 5;end;

function f1 (x : real) : real;beginf1 := 12*x*x - 6*cos(x);end;

beginwrite ('harga awal = '); read (x0);write ('toleransi = '); read (tol);write ('jumlah iterasi maksimum = '); read (max_iter);

it := 0;writeln ('it. x f (x) epsilon');epsilon := tol+1;while ((it <= max_iter) and (epsilon > tol))dobeginit := it + 1;xb := x0 - f (x0)/f1 (x0);epsilon := abs (xb-x0);writeln(it :3, ' ', xb : 8:5, ' ', f(xb) : 8:5, ' ', epsilon:4);x0 := xb;end;

if (it<=max_iter) thenbegin writeln ('toleransi terpenuhi'); writeln ('hasil akhir = ',xb :9:7); end else writeln ('toleransi tidak terpenuhi'); end.

Page 46: Numerik Math Mipa

45

F. HASIL

MASALAH 1

Eksekusi program dilakukan dengan mengunakan harga awal 0, toleransi: 0,00001, dan

jumlah iterasi maksimum sebesar 20. Hasil eksekusi program sebagai berikut:

Dari hasil eksekusi ini didapat hasil x = - 0,3902717 yang tercapai setelah iterasi ke -4.

dapat dilihat bahwa kasus ini penggunaan metode Newton -Raphson memberikan hasil

yang cepat.

MASALAH 2

Eksekusi program dilakukan dengan mengunakan harga awal 1, toleransi: 1, dan jumlah

iterasi maksimum sebesar 40 . Hasil eksekusi program sebagai berikut:

Page 47: Numerik Math Mipa

46

Dari hasil eksekusi ini didapat hasil x = 1, 7459301 yang tercapai setelah iterasi ke -1.

Dapat dilihat bahwa kasus ini penggunaan metode Newton -Raphson memberikan hasil

yang cepat.

MASALAH 3

Eksekusi program dilakukan dengan mengunakan harga awal (1) = -5, dan harga awal (2)

= 5 toleransi: 1, dan jumlah iterasi maksimum sebesar 20 . Hasil eksekusi program

sebagai berikut:

Dari hasil eksekusi ini didapat hasil x = 0,0513440 yang tercapai setelah iterasi ke -4.

Pemecahan masalah dengan penggunaan metode Newton-Raphson memberikan hasil

yang cepat.

Eksekusi sehingga dapat memperoleh hampiran yang dikehendaki terutama bergantung

pada toleransi (dalam program ini). Untuk toleransi yang lebih kecil, hasil akan dicapai

pada iterasi yang lebih besar.

Page 48: Numerik Math Mipa

47

BAGIAN VII

INTERPOLASI LINEAR DAN KUADRAT

A. TINJAUAN TEORI

Interpolasi linear adalah interpolasi yang memakai sarana garis lurus melalui (x0,f0),

(x1,f1), diberikan oleh polinom berderajat satu

(1) 10001 ,)()( xxfxxfxp

(lihat gambar 1) dengan f 1,0 xx adlah beda terbagi pertama yang didefinisikan sebagai

(2) 01

0110 ,

xx

ffxxf

memang dari (1) terlihat bahwa 001 )( fxp dan dari (1) dan (2) diperoleh 111 )( fxp s

eperti yang dituntut

y

galat

f0 p1(x) f1 y = f(x)

0 x0 x x1 x

Page 49: Numerik Math Mipa

48

Contoh 1 . interpolasi linear

Taksir populasi Indonesia tahun 1988 (dalam juta) dari tabel

Tahun 1980 1990

Populasi 179,3 203,2

Penyelesaian. P1 ( 1988) = 179,3 + 19801988(19801990

3,1792,203

=198,4

contoh 2 interpolasi linear

carilah ln 9,2 dari ln 9,0 = 2,1972, ln 9,5=2,2513 memakai interpolasi linear dan tentukan

galat dari ln 9,2 = 2,2192

penyelesaian.p1 (9,2)=2,1972+ )0,92,9(0,95,91972,22513.2

= 2,2188

galat bernilai -0,0004. karena interpolasi linear tidak cukup untuk mendapatkan

kecermatan 4D; akan tetapi cukup untuk kecermatan 3D.

interpolasi kuadrat adalah memakai sarana polinom p2(x) berdera jat paling tinggi dua

yang kurvanya melalui tiga titik ,,,,,, 221100 fxfxfx

(3) 2101010002 ))((,)()( xxxfxxxxxxfxxfxp

dengan 00 , xxf seperti diatas dan beda terbagi kedua diberikan oleh

(4) 12

1021210

,,,,

xx

xxfxxfxxxf

persamaan (3) memperlihatkan bahwa 0)02 ( fxp karena factor 0xx juga

101

0101012 )()( f

xx

ffxxfxp

dan dengan beberapa perhitungan lagi 222 )( fxp (periksa kebenarannya)

Page 50: Numerik Math Mipa

49

cntoh 3 interpolasi kuadrat

carilah ln 9,2 dariln 8,0 = 2,0794; ln 9,0 = 2,1972; ln 9,5 = 2,2513

penyelesaian. Kita hitung beda – beda terbagi memakai (2) dan (4)

2153,25,9

1082,0,

0064,0,,1972,20,9

1178,0,

0794,20,8

22

21

21011

10

00

fx

xxf

xxxffx

xxf

fx

dan kemudian dari (3)

xp2 =2,0794 + (x – 0,8) 0,1178+ (x – 8,0) (x – 9,0) (-0,0064)

= 0,6762 + 0,226x – 0,0064 2x

sehingga kita memperoleh jawaba )2,9(2p = 2,2192, yang eksak sampai 4 angka

dibelakang koma.

B. ALGORITMAA. Algoritma Program untuk Interpolasi Linier

1. Hitungii

i

xx

yyF

1

1101

2. Hitung 01FxxyP ii B. Algoritma Program untuk Interpolasi Kuadrat

1. Hitungii

i

xx

yyF

1

1101 ,

12

1212

ii

ii

xx

yyF , dan

ii xx

FFF

2

0112012

2. Hitung 01210111 ))(( FxxxxFxxyP ii

Page 51: Numerik Math Mipa

50

C. PROGRAM1. Interpolasi Linier

{Program Interpolasi Linier Daftar Variabel x0, y0 : Data Pertama x1, x2 : Data Kedua x : Nilai x } uses wincrt; var x0,y0,x1,y1,x : real; F01,P : real; begin write('Input data x[0] = ');read(x0); Write('Input data y[0] = ');read(y0); write('Input data x[1] = ');read(x1); write('Input data y[1] = ');read (y1); writeln; write('Input x = ');read(x); F01 :=(y1-y0)/(x1-x0); P :=y0+(x-x0)*F01;

writeln('Hasil Perhitungan P(x) = ',P);end.

2. Interpolasi Kuadrat{Program Interpolasi Linier Daftar Variabel x0, y0 : Data Pertama x1, x2 : Data Kedua x2, x2 : Data Ketiga x : Nilai x }uses wincrt;

var x0,y0,x1,y1,x2,y2,x : real; F01,F12,F012,P : real; begin write('Input data x[0] = ');read(x0); Write('Input data y[0] = ');read(y0); write('Input data x[1] = ');read(x 1); write('Input data y[1] = ');read(y1); write('Input data x[2] = ');read(x2); write('Input data y[2] = ');read(y2); writeln; write('Input x = ');read(x);

F01 :=(y1-y0)/(x1-x0); F12 :=(y2-y1)/(x2-x1); F012:=(F12-F01)/(x2-x1); P :=y0+(x-x0)*F01+(x-x0)*(x-X1)*F012;

writeln('Hasil Perhitungan P(x) = ',P);end.

Page 52: Numerik Math Mipa

51

C. HASIL

Tampilan Program Interpolasi Linier.

Tampilan Program Interpolasi Linier.

Page 53: Numerik Math Mipa

52

BAGIAN VIIIINTERPOLASI PADA TITIK YANG BERJARAK SA MA

A. TINJAUAN TEORI

Di dalam pengertian matematik dasar, interpolasi adalah perkiraan suatu nilai

tengah dari satu set nilai yang diketahui. Interpolasi dengan pengertian yang lebih

luas merupakan upaya mendefinisikan suatu fungsi dekatan suatu fungsi a nalitik

yang tidak diketahui atau pengganti fungsi rumit yang tak mungkin diperoleh

persamaan analitiknya. Masalah umum interpolasi adalah menjabarkan data -data

untuk fungsi dalam fungsi dekatan; dan salah satu metode penyelesaiannya

dinamakan metode prinsip substitusi.

Diberikan n + 1 titik data yang berupa pasangan bilangan : ( x0,f0), (x1,f1), ...,

(xn,fn), dengan x0, x1, ..., xn, semuanya berlainan, kita ingin mencari polinom p n(x)

yang pada setiap xj mengambil nilai f j yang diberikan yakni:

Pn(x0) = f0, pn(x1) = f1, ..., pn(xn) = fn

dan mempunyai derajat n atau kurang. Polinom p n yang demikian disebut polinom

penginterpolasi. Nilai-nilai xj seringkali disebut simpul. Nilai f j yang berpadanan

dapat berupa nilai-nilai suatu fungsi matematis f(x) (ln x, sin x, fungsi Bessel, dan

sebagainya), jadi f j = f(xj) dan pn(x) adalah hampiran dari f(x) yang pada simpul-

simpul nilainya sama dengan nilai f. Juga f j dapat berupa nilai secara empiris

diperoleh dalam suatu percobaan atau pengamatan. Polinom p n(x) digunakan untuk

mendapatkan nilai-nilai untuk semua x, adalah nilai-nilai penghampiran dari f(x)

atau nilai-nilai pada x yang tidak dilakukan pengkuran. Kita sebut ini interpolasi jika

x yang diminati terletak diantara simpul -simpul, dan ekstrapolasi jika dia terl etak

diantara simpul-simpul. Dalam kasus yang belakangan, prosesnya secara umum

kurang cermat.

Polinom penginterpolasi p n(x) derajat n atau kurang yang demikian yang

mencocoki data diberikan ada, di bawah kita akan menuliskannya secara gamblang,

dan tunggal. Ketunggalan terlihat dengan mencatat bahwa selisih d n = pn – qn dari

dua polinom yang demikian adalah suatu polinom berderajat n atau kurang yang

paling sedikit mempunyai n + 1 titik nol [yaitu simpul -simpul x0, x1, ..., xn tempat

Page 54: Numerik Math Mipa

53

pn(x) = qn(x), sesuai dengan asumsi], karenanya d n harus identik nol, yakni p n(x) =

qn(x).

B. DIAGRAM ALUR (FLOW CHART)

1. DIAGRAM ALUR INTERPOLASI MAJU NEWTON

MULAI

BacaJumlah data:n

i = 1 to n

Baca x(i);y(i)

Baca x

P = Newton(x)

Tulis Hasil P

SELESAI

P = Newton(x)

r = (x-x(0))/hSum = y(0)

i = 1 to n-1

Product = 1

j = 1 to i-1

Product = Product*(r-j)/(j+1)

Sum = Sum + Product*Del(i,0)

KEMBALI

Page 55: Numerik Math Mipa

54

P = Newton(x)

j = 1

tidak

Del = Del(i-1,j+1) – Del(i-1,j)

KEMBALI

Del = y(j+1) – y(j)

ya

Page 56: Numerik Math Mipa

55

2. DIAGRAM ALUR INTERPOLASI MUN DUR NEWTON

MULAI

BacaJumlah data:n

i = 1 to n

Baca x(i);y(i)

Baca x

P = Newton(x)

Tulis Hasil P

SELESAI

Newton(x)

r = (x-x(n-1))/hSum = y(n-1)

i = 1 to n-1

Product = 1

j = 0 to i-1

Product = Product*(r+j)/(j+1)

Sum = Sum + Product*Del(i,n - 1)

KEMBALIDel(i,j)

j = 1

tidak

Del = Del(i-1,j+1) – Del(i-1,j)

KEMBALI

Del = y(j+1) – y(j)

ya

Page 57: Numerik Math Mipa

56

3. DIAGRAM ALUR BEDA TERBAGI NEWTON

MULAI

BacaJumlah data:n

i = 1 to n

Baca x(i);y(i)

Baca x

P = Newton(x)

Tulis Hasil P

SELESAI

Newton(x)

Sum – y(0)

i = 1 to n-1

Product = 1

j = 0 to i-1

Product = Product*(x-x(j))

Sum = Sum + Product*Del(0,1)

KEMBALIDel(i,j)

(j-i)< = 1

tidak

Del = Del(i-1,j+1) – Del(i-1,j)

KEMBALI

Del = yj

ya

(j-i) = 1

Del = (yj-yj)/(xj-xj)

Page 58: Numerik Math Mipa

57

C. PROGRAM

1. INTERPOLASI BEDA MAJU NEWTON

{INTERPOLASI NEWTON KEDEPAN (EQUAL SPACE)DAFTAR VARIABELn : jumlah titik datax[], y[] : dataxp : nilai x}

USES WINCRT;

Var n, i : integer; x, y : Array [0..20] of real; h, xp, P : real;

{Fungsi Rekursif untuk mencari nilai 'tabel beda'}

Function Del(rank_n, k : integer) : real;

Begin if (rank_n = 1) then Del:=y[k+1] - y[k]

else Del:= Del(rank_n-1, k+1) - Del(rank_n-1,k);End;

Function Newton(xp : real) : real;

Var sum, product, r : real;

i, j : integer;

Begin r:=(xp-x[0])/h; sum:=y[0]; for i:=1 to n-1 do

Begin product:=1; for j:=0 to i-1 do product:=product*(r-j)/(j+1);

sum:=sum+Del(i,0)*product; End;

Newton:=sum; End;

Page 59: Numerik Math Mipa

58

Begin Write('Jumlah data n = ');read(n); Writeln; Write('Input data x[0] = ');read(x[0]); Write('Input data h = ');read(h); for i:=1 to n-1 do x[i]:=x[i-1]+h; for i:=0 to n-1 do

Begin Write('Input data y[',i:2,'] = '); read(y[i]); End; Writeln; Write('Input x = ');read(xp);

P:=Newton(xp); Writeln('Hasil Perhitungan P(x) = ',P);End.

2. INTERPOLASI BEDA MUNDUR NEWTON

{INTERPOLASI NEWTON KEBELAKANGDAFTAR VARIABELn : jumlah titik datax[], y[] : datax : nilai x }

USES WINCRT;

Var n, i : integer;

x, y : Array [0..20] of real; h, xp, P : real;

{Fungsi rekursif untuk mencari nilai 'tabel data' }

Function Del(rank_n, k : integer):real;

Begin if (rank_n=1) then Del:=y[k] -y[k-1]

else Del:=Del(rank_n-1, k) - Del(rank_n-1, k-1);End;

Page 60: Numerik Math Mipa

59

Function Newton(xp:real):real;Var sum, product, r : real; i, j : integer;

Begin r:=(xp-x[n-1])/h; sum:=y[n-1]; for i:=1 to n-1 do

Begin product:=1; for j:=0 to i-1 do product:=product*(r+j)/(j+1);

sum:=sum+Del(i, n-1)*product; End;

Newton:=sum;End;

Begin Write('Jumlah data n = ');read(n); Writeln;

Write('Input data x[0] = ');read(x[0]); Write('Input data h = ');read(h); for i:=1 to n-1 do x[i]:=x[i-1]+h; for i:=0 to n-1 do

Begin Write('Input data y[',i:2,'] = '); read(y[i]); End; Writeln; Write('Input x = '); read(xp);

P:=Newton(xp);

Writeln('Hasil Perhitungan P(x) = ',P);End.

Page 61: Numerik Math Mipa

60

3. INTERPOLASI BEDA TERBAGI NEWTON

{INTERPOLASI BEDA TERBAGI NEWTONDAFTAR VARIABELn : jumlah titik datax[], y[] : dataxp : nilai x}

USES WINCRT;

Var i, n : integer; x, y : Array [0..20] of real; xp, P: real;

{Fungsi rekursif untuk mencari nilai 'tabel beda'}

Function Del(i,k:integer):real;Begin if(k-i<=0) then Del:=y[i] else if (k-i = 1) then Del:=(y[k]-y[i])/(x[k]-x[i]) else Del:=(Del(i+1,k)-Del(i,k-1))/(x[k]-x[i]);End;

Function Newton(xp:real):real;

Var sum, product : real; i, j : integer; Begin sum:=y[0]; for i:=1 to n-1 do Begin product:=1; for j:=0 to i-1 do product:=product*(xp-x[j]);

sum:=sum+Del(0,i)*product; End;

Newton:=sum; End;

Begin Write('Jumlah data n = ');read(n); Writeln;

for i:=0 to n-1 do

Page 62: Numerik Math Mipa

61

Begin Write('Input data x[',i:2,']= '); read(x[i]); Write('Input data y[',i:2,']= ');read(y[i ]); End; Writeln; Write('Input x = ');read(xp); P:=Newton(xp); Writeln('Hasil perhitungan P(x) = ',P);End.

D. HASIL

1. INTERPOLASI BEDA MAJU NEWTON

Page 63: Numerik Math Mipa

62

2. INTERPOLASI BEDA MUNDUR NEWTON

3. INTERPOLASI BEDA TERBAGI NEWTON

Page 64: Numerik Math Mipa

63

BAGIAN IX

INTERPOLASI INVERS

C. DIAGRAM ALUR (FLOW CHART)

BAGAN ALUR INTERPOLASI INVERS

MULAI

Baca jumlahdata : n

Baca x[i];y[i]

Baca y

P = Invers(y)

i = 1 to n

Tulis hasil P

SELESAI

Invers (y)

suku_2= (f0 + f1]) / 2suku_3=(sk*sk-0.25)/2*(del(f1)+del(f0))/2

suku_4 := sk*(sk*sk - 0.25)/6* del (f1)

sk = 0

sk_1= 1/del (f0)*(y-suku_2-suku_3-suku_4)

epsilon = abs((sk_1-sk)/sk_1)sk = sk_1

epsilon<tol

KEMBALI

Ya

Tidak

Page 65: Numerik Math Mipa

64

D. PROGRAM

INTERPOLASI INVERS

uses wincrt;{n:jumlah titik datax[],y[]:dataxp:nilai x}

varn,nmid, i:integer;x,y :array [0..20] of real;h,yp,P: real;

consttol = 0000001;

{fungsu rekursif untuk mencari nilai 'tabel beda'}function del(rank_n,k : integer) :real;beginif(rank_n =1) then del := y[nmid + k + 1] - y[nmid + k]else del := del(rank_n - 1, k + 1) - del(rank_n - 1, k);end;

function factorial(n: integer) : longint;beginif(n <=1) then factorial :=1else factorial := n * factorial (n - 1);end;

function invers(yp :real): real;varsk,sk_1,suku_2,suku_3,suku_4, epsilon: real;xp:real;

beginsk :=0;epsilon := tol + 1;while(epsilon> tol) dobeginsuku_2 := (y[nmid] + y[nmid +1]) / 2.0;

Page 66: Numerik Math Mipa

65

suku_3 := (sk * sk - 0.25) / 2.0 * (del(2, -1)+ del(2,0))/2.0;suku_4 := sk * (sk * sk - 0.25)/6.0 * del (3, -1);sk_1 := 1/del (1,0) * (yp - suku_2 - suku_3 - suku_4);epsilon := abs ((sk_1 - sk) / sk_1);sk := sk_1;end;

xp := x[nmid] + h * (sk + 0.5);invers := xp;end;

beginwrite('jumlah data n (genap) = '); read (n);nmid := trunc (n/2) - 1;if ((n mod 2) <> 0) thenbeginwriteln('jumlah data harus genap');halt(1);end;

writeln;write('input data x[0] = '); read (x[0]);write('input data h = '); read (h);for i := 1 to n - 1 do x[i] := x[i -1] +h;for i := 0 to n - 1 dobeginwrite('input data y[' ,i:2, ') = ');read(y[i]);end;

writeln;write('input P(x) = '); read(yp);P := invers (yp);writeln('hasil perhitungan x = ',P);end.

Page 67: Numerik Math Mipa

66

E. HASIL