24
LEMBAR LAPORAN PRAKTIKUM Nomor : 3 (Tiga) Nama Mata Kuliah : Praktikum Teknik Komputasi Kode MK / Bobot SKS : 41323115/ 1 SKS Program Studi : D3 Manajemen Informatika Dosen / Instruktur : Unit Tree Kartini, S. T.,M.T. Nama Mahasiswa / NRP : Andriyan Dwi Putranto / 115623003

LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

Embed Size (px)

Citation preview

Page 1: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

LEMBAR LAPORAN PRAKTIKUM

Nomor : 3 (Tiga)

Nama Mata Kuliah : Praktikum Teknik Komputasi

Kode MK / Bobot SKS : 41323115/ 1 SKS

Program Studi : D3 Manajemen Informatika

Dosen / Instruktur : Unit Tree Kartini, S. T.,M.T.

Nama Mahasiswa / NRP : Andriyan Dwi Putranto / 115623003

Page 2: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

LEMBAR LAPORAN PRAKTIKUM

Nomor : 3 (Tiga)

Nama Mata Kuliah : Praktikum Teknik Komputasi

Kode MK / Bobot SKS : 41323115/ 1 SKS

Program Studi : D3 Manajemen Informatika

Dosen / Instruktur : Unit Tree Kartini, S. T.,M.T.

Nama Mahasiswa / NRP : Ferdian Budi Cahyono / 115623005

Page 3: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

LEMBAR LAPORAN PRAKTIKUM

Nomor : 3 (Tiga)

Nama Mata Kuliah : Praktikum Teknik Komputasi

Kode MK / Bobot SKS : 41323115/ 1 SKS

Program Studi : D3 Manajemen Informatika

Dosen / Instruktur : Unit Tree Kartini, S. T.,M.T.

Nama Mahasiswa / NRP : Sarah Ivanda Pradani / 115623006

Page 4: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

LEMBAR LAPORAN PRAKTIKUM

Nomor : 3 (Tiga)

Nama Mata Kuliah : Praktikum Teknik Komputasi

Kode MK / Bobot SKS : 41323115/ 1 SKS

Program Studi : D3 Manajemen Informatika

Dosen / Instruktur : Unit Tree Kartini, S. T.,M.T.

Nama Mahasiswa / NRP : Ricky Faturahman / 115623211

Page 5: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

A. Judul

Penyelesaian Persamaan Non Linear dengan Metode regula falsi

B. Dasar Teori

METODE REGULA FALSI

Adalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi, metode ini bekerja secara iterasi dengan melakukan update range. Titik pendekatan yang digunakan oleh metode regula falsi adalah :

                     Dengan kata lain titik pendekatan x adalah nilai rata-rata range berdasarkan F(x).

Perhatikan kebangunan 2 segitiga  Pcb dan  PQR di atas, sehingga persamaan berikut dapat digunakan:

Page 6: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

D. Listing Program

A. Algoritma

Algoritma Metode Regula Falsi

1. Definisikan fungsi f(x)2. Tentukan batas bawah (a) dan batas atas (b)

3. Tentukan toleransi error (e) dan iterasi maksimum (n)

4. Hitung F(a) = f(a) dan F(b) = f(b)

5. Untuk Iterasi I=1 s/d n atau error > e

 

Hitung F(x) = f(x)

Hitung error = [Fx]

Jika Fx . Fa < 0 maka b=x dan Fb=Fx jika tidak a=x dan Fa=Fx

Akar persamaan adalah x

Page 7: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

#include <iostream.h>

#include <stdlib.h>

#include <conio.h>

#include <stdio.h>

#include <math.h>

#define e 2.718281828

#define error_limit 0.00000000000001 //flexible sesuai kebutuhan

main()

{

FILE *regula_falsi, *regula_x;

double fx1, fx2, fx3,

x1, x2, x3,

x10, x20, f1f2,

x, dx, y1, y2, dy;

int i, j, k;

char lagi, belum;

do

{

clrscr();

j=0;

regula_falsi = fopen("regula_falsi.txt", "w+");

Page 8: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

regula_x = fopen("cross_regula.txt", "w+");

do

{

clrscr();

cout << "Metode Regula-Falsi\n";

cout << "===================\n\n";

//Persamaan utama dan persamaan untuk mencari titik potongnya

cout << "f(x) = 3*e^x - x - 3\n\n";

cout << "y1 = 2e^x dan y2 = x+3\n\n";

cout << "Mencari Titik Potong terdekat\n";

cout << "-----------------------------\n\n";

cout << "Berapa Nilai awal x = ";

cin >> x;

cout << "\nBerapa Nilai Interval x = ";

cin >> dx;

cout << "\nBerapa kali Iterasi = ";

cin >> k;

printf("\n\t-------------------------------------------------\n");

printf("\tIterasi ke-\tx\ty1\ty2\tselisih\n");

printf("\t-------------------------------------------------\n\n");

fprintf(regula_x,"\n\t-------------------------------------------------\n");

Page 9: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

fprintf(regula_x,"\tIterasi ke-\tx\ty1\ty2\tselisih\n");

fprintf(regula_x,"\t-------------------------------------------------\n\n");

for (i = 0; i < k; i++)

{

y1 = 2*pow(e,x);

y2 = x + 3;

dy = y1 - y2;

printf("\t\t%d\t%.1f\t%.2f\t%.2f\t%.2f\n", i+1, x, y1, y2, dy);

fprintf(regula_x, "\t\t%d\t%.1f\t%.2f\t%.2f\t%.2f\n", i+1, x, y1,y2,dy);

x+=dx;

}

printf("\n\t-------------------------------------------------\n\n");

fprintf(regula_x, "\t-------------------------------------------------\n\n");

fclose(regula_x);

cout << "\nApakah Titik Potong telah ditemukan ? ";

cin >> belum;

}while(belum != 'y');

cout << "\nMencari Titik Potong sebenarnya\n";

cout << "===============================\n\n";

cout << "Masukkan Nilai x1 = ";

cin >> x1;

Page 10: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

x10 = x1;

fx1 = (3*pow(e,x1)) - x1 - 3;

cout << "\nMasukkan Nilai x2 = ";

cin >> x2;

fx2 = (3*pow(e,x2)) - x2 - 3;

x20 = x2;

f1f2 = fx1*fx2;

(f1f2 >= 0.0);

printf("\n----------------------------------------------------------------\n");

printf("Iterasi ke-\tx3\tfx3\t\tfx3 (16 digit) Error Aproksimasi\n");

printf("----------------------------------------------------------------\n\n");

fprintf(regula_falsi,"\n--------------------------------------------------\n");

fprintf(regula_falsi,"Iterasi ke-\tx3\tfx3\t\tfx3(16digit) ErrorAproksimasi\n");

fprintf(regula_falsi, "-------------------------------------------------\n\n");

do

{

j++;

x3 = (x1*fx2 - x2*fx1)/(fx2 - fx1);

fx3 = (3*pow(e,x3)) - x3 - 3;

printf("\t%d\t%.3f\t%.6f\t%.16f\n", j, x3, fx3, fabs(fx3));

fprintf(regula_falsi,"\t%d\t%.3f\t%.6f\t%.16f\n", j, x3, fx3,

Page 11: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

fabs(fx3));

if(fx1*fx3 < 0)

{

x2 = x3;

}

else

{

x1 = x3;

fx1 = fx3;

}

}while(fabs(fx3) > error_limit);

printf("\n----------------------------------------------------------------\n");

fprintf(regula_falsi,"\n---------------------------------------------------");

printf("\n\nDengan Nilai awal x1 = %.2f dan x2 = %.2f", x10, x20);

printf("\n\nDiperoleh Akar Persamaan x = %.3f", x3);

printf("\n\nDengan Error sebesar = %.16f", fabs(fx3));

fprintf(regula_falsi,"\n\nDengan Nilai awal x1 = %.2f dan x2 = %.2f", x10, x20);

fprintf(regula_falsi,"\n\nDiperoleh Akar Persamaan x = %.3f", x3);

fprintf(regula_falsi,"\n\nDengan Error sebesar = %.16f", fabs(fx3));

fclose(regula_falsi);

cout << "\n\nTekan Enter untuk melanjutkan .........";

Page 12: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

MULAI

DEFINISIKAN FUNGSI

Baca: a, b, tol, iter max

Iter = 0

Fa = F(a)

Fb = F(b)

Fa * Fb > 0

Tulis : Fa * Fb > 0

iter = iter + 1

, Fm = F(m)

, Fm = F(m)

m-a < tol, iter > iter_max

Fa * Fm < 0

b = m, Fb=Fm

a = m, Fa = Fm

Tulis hasil: m,F(m)

SELESAI

getch();

clrscr();

cout << "\n\nCoba lagi dengan x dan y berbeda (y/t) ? ";

cin >> lagi;

}while(lagi != 't');

return 0;

}

E. Gambar Skema/Flowchart

Page 13: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

F. Bahan dan peralatan :

Page 14: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

Komputer Laboratorium

Software C++

Disket/Flashdisk

G. Langkah-langkahKegiatan :

1. Mendefinisikan dari permasalahan matematis nonlinear untuk menentukan

nilai x yang memotong sumbu x,

2. Pengamatan awal:

Dapatkan dua nilai pendekatan awal diantara nilai x yang memotong sumbu

x sebagai nilai a (batas atas) dan nilai b (batas bawah)

3. Pengamatan hasil :

a. Dapatkan nilai akar dan f(x) yang = 0 atau mendekati nilai 0 pada setiap

iterasi dari awal sampai akhir iterasi

b. Dapatkan nilai x dengan persamaan :

c. Akhir iterasi ditentukan sampai dengan n iterasi atau jika nilai < error

4. Pengamatan terhadap hasil dengan bermacam-macam parameter input:

a. Nilai error (e) akar ditentukan = 0.00000001 sebagai pembatas iterasi

nilai f(x)

b. Jumlah iterasi maksimum

c. Bandingkan antara hasil yang diperoleh

d. Pengubahan nilai awal batas atas dan batas bawah

H. Hasil Kegiatan Praktikum

Page 15: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

1. Tabel Hasil Percobaan

Page 16: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

2. Pengamatan Terhadap Hasil

3. Pengubahan nilai awal batas atas dan batas bawah terhadap

perhitungan

Jika batas atas dan batas bawahnya diubah maka akan mempengaruhi titik potongnya. Begitu juga dengan keeror-annya.

Page 17: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

I. Analisa dan Kesimpulan

Secara umum konvergensinya lebih cepat dibandingkan dengan metode biseksi. Namun, pada beberapa kasus kecepatan konvergensinya justru lebih lambat.Dari perhitungan manual dan program didapatkan hasil yang sama.

J. Tugas dan Pertanyaan :Dari suatu perhitungan tentang kebutuhan akan produksi optimal suatu

perusahaan didapat persamaan biaya yang dibutuhkan untuk pengadaan produksi dalam satu hari sebagai berikut :

C = 13000 N-1 + 158.11 N-0.5 + N + 0.0025 N2

dengan

C = biaya per hari

N = jumlah komponen yang diproduksi

Hitunglah jumlah optimal komponen yang diproduksi sehingga biaya produksi menjadi minimum.

Penyelesaian

Biaya minimum turunan pertama dari persamaan biaya harus nol.. Ini berarti : C ‘ (N) = - 13000 N-2 - 79.055 N-1.5 + 1 + 0.005 N = 0

Nyatakan kembali persamaan dalam varibel bebas x :

- 13000 x -2 - 79.055 x -1.5 + 1 + 0.005 x = 0

Maka, menghitung akar persamaan dengan program 1.5 setelah modifikasi pada definisi fungsi adalah:

return -13000 /(x * x) - 79.055 / (x * sqrt(x)) + 1 + 0.005 * x; (C++)

f : = -13000 /(x * x) - 79.055 / (x * sqrt(x)) + 1 + 0.005 * x; (Pascal)

Page 18: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

yang memberikan hasil eksekusi program :

Harga awal = 100

Harga kedua = 90

Toleransi = 0.001

Jumlah iterasi maksimum = 10

Toleransi terpenuhi

Hasil akhir = 96.4122577

Jumlah produksi optimal dalam satu hari adalah : N = 94 buah

x f(x) epsilon96.71768 0.01074 6.7E+00

96.43829 0.00092 2.8E-0196.41215 -0.00000 2.6E-0296.41226 0.00000 1.1E-04

Page 19: LEMBAR LAPORAN PRAKTIKUM · Web viewAdalah metode pencarian akar persamaan dengan memanfaatkan kemiringan dan selisih tinggi dari dua titik batas range. Seperti halnya metode biseksi,

K.Daftar Pustaka

http://saluky.blogspot.com/2011/12/metoda-rugula-false-dengan-php.html