PANGKAT
REKURSIF
A.PENGERTIAN
REKURSIF
Rekursif adalah fungsi yang
memanggil dirinya sendiri. Fungsi ini akan terusberjalan sampai kondisi
berhenti terpenuhi, oleh karena itu dalam sebuah fungsi rekursif perlu
terdapat 2 blok penting, yaitu blok yang menjadi titik berhenti dari sebuah
prosesrekursi dan blok yang memanggil dirinya sendiri.
B.CONTOH FUNGSI REKURSIF
Dalam fungsi pangkat xy ,
kita tahu
bahwa semua bilangan selain 0, jika
dipangkatkan
dengan 0 nilainya sama
dengan 1. Jika x dipangkatkan
dengan y, dengan y
lebih dari 0, maka hasilnya sama dengan x dikalikan dengan x
dipangkatkan y – 1.dan jika di
tulis dalm notaasi matematika adalah sebagai berikut :
xy = 1, jika y = 0
xy
= x * x(y-1) , jika y > 0
Dapat kita lihat pada definisi diatas yaitu y > 0 ,
bahwa bentuk pemangkatannya muncul kembali disisi kanan. Dan disitulah yang
disebutkan rekursif yaitu fungsi yang mendefinisikan fungsi itu sendiri. Dan
definisi rekursif selalu dimulai dari kasus penyetop, penghenti, yang terjadi
ketika y = 0, dan dalam hal ini yang tadinya x dipangkatkan
dengan y, kini bentuk pemangkatannya menjadi lebih sederhana yaitu y – 1. Hal ini dimaksudkan untuk “menggiring” masalah kompleks ke kasus dasar atau penyetop rekursinya. Untuk x = 10 dan y = 0, hasil dari xy adalah 1. Untuk x = 10 dan y = 3.
dengan y, kini bentuk pemangkatannya menjadi lebih sederhana yaitu y – 1. Hal ini dimaksudkan untuk “menggiring” masalah kompleks ke kasus dasar atau penyetop rekursinya. Untuk x = 10 dan y = 0, hasil dari xy adalah 1. Untuk x = 10 dan y = 3.
Untuk mencari hasil perpangkatan dengan langkah seperti dibawah ini:
Ø 103 = 10 * 102
( untuk mencari definisi tersebut menggunakan rumus Xy = X*X(Y-1)
)
Ø Lalu hasil dari X(Y-1)
menjadi pangkat untuk penghitungan yang berikutnya yaitu 102 = 10 *
101
Ø Dan hasil dari X(Y-1)
menjadi pangkat untuk penghitungan berikutnya yaitu 101 = 10 * 100
Ø Kemudian hasil dari X(Y-1)
menjadi 100 hasil dari 100=1
Ø Dari hasil 100=1
menjadi nilai untuk hasil rumus X(Y-1) menjadi 101 = 10 *
1=10
Ø Dan hasil dari 101 = 10 *
1=10 dan kemudian menjadi nilai untuk rumus X(Y-1) menjadi 102 =
10 * 10=100
Ø Dan hasil dari 102 = 10 *
10=100 kemudian menjadi nilai untuk rumus X(Y-1) menjadi 103=
10 * 10=1000
Fungsi pangkat akan memanggil
dirinya sendiri dan menghasilkan n x n x n x n x n sampai m bernilai 0.
Begitulah rekursif bekerja.
Memecahkan
suatu masalah dengan rekursif adalah sebagai berikut:
Ø Menentukan kasus batas di mana
pemanggilan rekursif tidak lagi diperlukan.
Ø Menerapkan suatu langkah untuk
meneruskan kasus kompleks ke kasus pembatasnya dengan metode yang mencerminkan
fungsinya.
Setelah mempelajari materi diatas
mari kita coba soal dengan membuat program penghitung pangkat dari penjumlahan
dua bilangan yang diselesaikan secara rekursif.
public class pangkat {
public static int
hitungPangkat(int a, int b ) {
if (b == 0) {
return 2;
}else{
return a *
hitungPangkat (a, b - 1);
}}
public static void
main(String[] args) {
System.out.println("hasil (2+3) pangkat 3 ="+ hitungPangkat
(5,3));
}
}
Keterangan:
·
Membuat class pangkat,
·
menuliskan method main variabel a dan b type
datanya integer.
·
Dilanjutkan syarat pangkat jika y ==0
·
Return a+b maka
jumlah nilainya dapat diambil dari penjumlahan variabel a dan variabel
b.
·
Else,lalu kemudian kita lihat syaratnya
jika pangkat selain dengan pangkat b sama dengan 0.
·
Return (a+b)*Hitung Pangkat (a, b,y-1),maka
nilainya adalah a ditambah b dikali isi dari parameter penghitung pangkat (a, b
variable untuk pangkat y-1)
·
Menginplementasikan method System.out.println
("hasil (2+3) pangkat 3 ="+
hitungPangkat (2,3,3));}
·
Maka untuk mencetak output hasil
perhitungan pangkat dari nilai (2, 3, 3).
Hasil
Outputnya.
Hasil
(2+3) pangkat 3 = 125
Jdi
kita dapat menyimpulkan dengan menggunakan metode rekursif proses perhitungan
menjadi lebih.dan kita tidak akan kesulitan lagi mempelajari tentang intruksi
java tentang rekursif.
NAMA:LINTANG NOVITASARI
NIM:1200631017
0 comments:
Post a Comment