Home > Programming > Pemangkatan Rekursif dengan Java

Pemangkatan Rekursif dengan Java


Rekursif merupakan salah satu metode dalam dunia matematika dimana definisi sebuah fungsi mengandung fungsi itu sendiri. Dalam dunia pemrograman, rekursif diimplementasikan dalam sebuah fungsi yang memanggil dirinya sendiri dan tergolong dalam dynamic programming.

Dalam fungsi pangkat x,y , 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. Jika dituliskan dalam notasi matematika definisinya adalah sebagai berikut:

x^y = 1, jika y = 0
x^y = x * x^(y-1), jika y > 0

Kita lihat di atas pada definisi y > 0, bentuk pemangkatan muncul kembali di bagian kanan(dikalikan dengan x^(y-1)). Itulah yang disebut rekursif. Definisi rekursif selalu dimulai dengan kasus penyetop, penghenti, atau kasus dasar dari suatu permasalahan, dalam hal ini terjadi ketika nilai y = 0.

Untuk x = 10 dan y = 0, hasil dari x^y adalah 1. Untuk x = 10 dan y = 3 hasilnya dapat digambarkan sebagai berikut:

Gambaran Pangkat Rekursif

Gambaran Pangkat Rekursif

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.

Berikut adalah code java dari pemakatan rekursif :

class Pangkat {
   public static int pangkatRekursif(int x, int y) {
      if (y == 0) {
         return 1;
      }
      else {
         return x * pangkatRekursif(x, y - 1);
      }
   }
   public static void main(String[] args) {
       System.out.println("10 dipangkatkan 3 = "+pangkatRekursif(10,3));
   }
}
Categories: Programming Tags: ,
  1. October 19, 2010 at 8:16 pm

    knp ceeh pelajaran matematika thu susah…….
    dulu aq thu suka pelajaran matematika……..
    skrng dh enggak… kog bisa gitu y..???

    • October 21, 2010 at 1:29 pm

      coba pikir2 lagi…
      dulu kn gampang masih dasar,,klo sudah terapan pasti begitu

  2. Putra
    December 13, 2012 at 8:06 pm

    Mas, apa metoda Rekursif cuma bisa di terapkan dalam sistem numerik aja?

    • June 2, 2013 at 11:09 pm

      Bisa diterapkan pada apapun yang bisa menyesuaikan dengan kondisi rekursif. Yang jelas pada dasarnya semua yang bisa dihitung, tapi bentuknya kan bisa apa saja.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: