Perulangan Java Part 5 – mengenal Perulangan Rekursi Pada Java

Febri Hidayan Komentar

Perulangan Java Part 5 – Mengenal Perulangan Rekursi Pada Java

Sebelumnya kita sudah belajar banyak hal di perulangan do while sekarang kita akan belajar perulangan rekursi di Java. Mungkin sangat jarang terdengar khusus perulangan ini silakan simak penjelasan panjangnya dibawah ini.

Mengenal Perulangan Rekursi Pada Java

Teknik perulangan dengan rekursi ini cukup unik sekali untuk kita pelajari. Teknik ini memanggil dirinya sendiri untuk melakukan perulangan disetiap perintahnya. Perulangan ini akan berhenti jika variabel yang diulang pada saat kita proses rekursinya sudah tidak terpenuhi lagi. Teknik rekursi sangat bermanfaat sekali terutama bagian kasus kaus seperti halnya pengurutan data, tree, dan juga graph.

Selanjutnya kita harus membahas teknik rekursi dimulai dari aturan dan bagaimana proses rekursi dijalankan. Seperti halnya prulangan dengan teknik lainnya yang sudah kita pelajari. Pada teknik rekursi terdapat pengontrol yang bertugas untuk menentukan kapan proses rekursi akan berakhir. Pada bingung bagaimana caranya bisa kita lihat kodingan dibawah ini.

Kode Perulangan Rekursi Pada Java
package perulangan;

/**
 *
 * @author Sekolah Program
 */
public class rekursi {
    public static void main(String[] args) {
        int a = 5;
        System.out.println("nilai rekursi dari "+a+" adalah :"+rekursi(a));
    }
    static int rekursi(int n) {
        if (n == 0) {
            return 1;
        } else {
            return n * rekursi(n-1);
        }
    }
}

Maka hasil running-Nya

Jadi kenapa hal ini bisa dilakukan, karena terdapat sebuah pertanyaan kodisional if(n==0), yang tujuannya untuk menghentikan proses rekursi. Jika nilai n==0 maka hasil rekursi akan berhenti.

Ada beberapa pertanyaan dimana bagaimana hal ini bisa terjadi, pada saat seluruh aliran kode proses rekursi. Jika method fekursi dengan nilai 5 dipanggilkan, maka proses rekursi tadi akan dilakukan. Karena 5 tidak sama dengan 0 yang dilakukan dari perinta if, maka kondisional else diambil dan 5*rekursi(5-1) tereksekusi. Dengan demikian ini, nilai variabelnya menjadi 4 karena kita dikurang 1. Setelah itu, method rekursi dengan nilai 4 dipanggil. Karena nilai 4 tidak sama dengan 0, kodisional else pasti akan  dieksekusi olehnya. Begitula seterusnya sampai nilai n=0. Jika nilai n=0 maka proses rekursi akan berhenti dan mengambil nilai n=1. Kemudian, n=1 akan memanggil kembali nila dari pada method rekursi sebelumnya untuk dikalikan sehingga nilai total yang sudah dikalikan seperti halnya ini 1*1*2*3*4*5=120. Mungkin itu saja dari pembahasan kita semoga bermanfaat

Category JavaTags Dasar Java Latihan Java Operator Java Tipe Data Java


Write a Reply or Comment

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

This site uses Akismet to reduce spam. Learn how your comment data is processed.