Laman

Rabu, 29 Desember 2010

contoh rekursif function di C#

Menurut pengertian rekursif function adalah function yang bisa memanggil dirinya sendiri. Bingung...?????  memang untuk belajar pemrograman harus dengan praktek, kalau tidak akan sulit untuk memahaminya.
oke... sekarang kita mulai belajar memahami tentang rekursif function di visual c#. untuk memudahkan dalam memahami rekursif function, silahkan download terlebih dahulu project yang telah disiapkan disini atau download projectnya disini. materi kali ini sedikit berhubungan dengan random class. untuk project random class silahkan download disini atau silahkan baca materinya disini seperti biasa, silahkan buat project baru, klik file new project, pada kotak project name silahkan isi nama project sesuai dengan keinginan, tidak ada aturan khusus dalam penamaan project. untuk langkah-langkah selanjutnya silahkan ikuti intruksi dibawah ini

Langkah 1 : tambahkan satu button dan satu datagridview padam form1. atur dan tata sedemikian rupa sehingga tampilannya seperti pada gambar dibawah ini khusus untuk datagridView tambahkan 2 kolom dengan cara klik kana pada datagridview dan klik add colomn

Gambar 1. Preview desain aplikasi

2. Pada button satu tambahkan source code berikut ini
      dataGridView1.Rows.Add(1000);
            for (int i = 0; i < 1000; i++)
            {
                Thread.Sleep(3);
                dataGridView1.Rows[i].Cells[0].Value =      
                acak(10).ToString();        
            }
            for (int i = 0; i < 1000; i++)
            {
                Thread.Sleep(2);                
                dataGridView1.Rows[i].Cells[1].Value = 
                acak(10).ToString();                
            }
            for (int i = 0; i < 1000; i++)
            {
                Thread.Sleep(1);
                dataGridView1.Rows[i].Cells[2].Value = 
                acak(10).ToString();
            }

jangan lupa tambahkan library thread pada header program. using system.thread 
langkah 3: kita tambahkan function rekursif, function rekursif telah disiapkan, tinggal copy paste ke form. berikut ini function rekursif tersebut. funcyion rekursif tersebut bernama acak
private int acak(int data)
        {
            int temp = 0;
            Random acakku = new Random();            
            temp=acakku.Next(0, data);
            if (temp == 8)
            {
                temp = acakku.Next(0, data);
                return acak(6);                
            }
            return temp;           
        }

pada source function diatas, sebenarnya mirip dengan function biasa seperti dengan function-function lain yang dibuat dengan C#, akan tetapi jika dilihat lebih cermat akan ada sedikit perbedaan, pada fucntion diatas function acak melakukan pemanggilan terhadap dirinya sendiri, padahal pemanggilan itu terjadi di block statement function acak. inilah yang dimaksud dengan rekursif function, yaitu fungsi yang mengizinkan dirinya memanggil dirinya sendiri. 
langkah 4 : Done, jalankan program. 
jika langkah-langkah diatas dilakukan dengang benar, sewaktu program dijalankan program akan menampilkan bilangan random pada datagrid. perhatikan seksama pada dataGridview1. tampilannya mungkin seperti pada gambar dibawah ini.

Gambar 2. Preview hasil running program

tapi setiap kali running hasilnya akan berbeda, tidak harus sama seperti pada gambar diatas, karena kita menggunakan konsep random. pada datagridView1 perhatikan dengan seksama, pada dataGridView1 angka-angka yang dihasilkan adalah angka antara 0 sampai 9, dan pada datagridVew1 tidak pernah ada nilai 8. ini dikarenakan pada function acak setiap kali function tersebut menghasilkan nilai 8 function tersebut memanggil ulang dirinya sebelum sempat me return nilainya ke function. sehingga angka 8 tidak pernah di return kan ke function. inilah yang dinamakan dengan rekursif function

download binary file nya disini
download full projectnya disini

for more information contact us on informasi@csharp-indonesia.com
NB : Dalam tutorial ini program ditulisa menggunakan IDE Visual studio 2010. dengan target framework 2.0 . Sehingga minimal komputer harus terinstal windows xp untuk bisa menjalankan program *.exe nya, Sedangkan untuk membuka projectnya mau tidak mau harus menginstal microsoft visual studio 2010

11 komentar:

  1. makasih cth2 programnya :)
    ijin copas buat belajar :p
    keren2 samplenya

    BalasHapus
  2. oce.. oce....
    silahkan dikembangkan sendiri ilmunya

    BalasHapus