Langsung ke konten utama

Rekursif (Algoritma dan Pemograman 2)

Rekursif sangat penting dalam pemograman, mengapa dikatakan demikian ? karena rekursif menyediakan teknik menyelesaikan persoalan yang di dalamnya mengandung definisi persoalan itu sendiri. Sayangnya rekursif adalah materi yang sulit dimengerti oleh pemula. Dalam sebuah rekursi sebenarnya tekandung pengertian sebuah prosedur atau fungsi. Perbedaannya adalah bahwa rekursi bisa memanggil dirinya sendiri, kalau prosedur atau fungsi harus diipanggil melalui pemanggil prosedur atau fungsi.

Definisi Rekursif diturunkan secara matematik. Definisi tidak formal menyatakan bahwa sebuah objek dikatakan rekursif jika ia didefinisikan menjadi lebih sederhana dalam terminologi dirinya sendiri. Nicklaus Wirth mendefinisikan sebagai berikut:
"An Object is said be Recursive if it Partially Consist or is Defines in Terms of Itself".

Sumber lain mendefinisikan Rekursif sebagai salah satu metode dalam dunia matematika dan pemograman dimana definisi sebuah fungsi mengandung fungsi itu sendiri. Dalam dunia pemograman, rekursif diimplementasikan dalam sebuah fungsi yang memanggil dirinya sendiri misalnya : pangkat, faktorial, dan barisan fibonacci.

Dalam kehidupan sehari-hari banyak terdapat objek rekursif. Seperti, jika kita melakukan pengamatan terhadap daun pakis, tahukan anda bahwa daun pakis dibentuk oleh ranting-ranting daun yang memiliki pola yang mirip dengan daun pakis itu sendiri. Setiap ranting daun disusun lagi oleh ranting daun dengan pola yang mirip. Hal tersebut sama dengan pohon cemara. Objek Rekursif dalam hal ini disebut Fraktal. Dalam bidang grafik dan seni, Fraktal dimanfaatkan untuk membangkitkan gambar yang indah dan menawan.


Ciri masalah yang dapat diselesaikan secara rekursif adalah masalah itu dapat direduksi menjadi satu atau lebih masalah-masalah serupa yang lebih kecil. Secara umum metode algoritma rekursi terdiri atas dua komponen utama, yaitu :
Seperti apa contohnya ?


1. Bagian induksi, merupakan satu atau lebih kasus yang menyelesaikan masalah serupa namun dengan ukuran data ataupun metode yang lebih sederhana.
2. Bagian penyetop, merupakan satu atau lebih kasus yang paling sederhana dan solusinya tidak perlu lagi terjadi rekursif.

Disini saya contohkan contoh pada proses Faktorial. Faktorial dari n (ditulis n!), adalah hasil kali dari bilangan tersebut dengan bilangan di bawahnya, di bawahnya hingga bilangan 1. Sebagai contoh, 4! = (4)(3)(2)(1).
contoh :
  3!=3.(3-1)!
  3!=3.2!     -->   Faktorial n-1
  3!=3.2.(2-1)!
  3!=3.2.1!   -->  Faktorial n-2
  3!=3.2.1

Program dalam bahasa c++ nya :
1. #Include<iostream.h>
2. #include <conio.h>
3. 
4. Int Faktorial (int n)
5. {
6. if((n==0)||(n==1))
7. return(1);
8. else 
9. return(n*faktorial(n-1));
10. }
11. Void main()
12. {
13. int x;
14. cout<< "masukkan angka";
15. cin>>n;
16. cout<<"Hasil Faktorial = ";
17. faktorial(x);
18 getch();
19. }



Contoh program lain :


 Sekian ^^

Nama  : Mercy Gayatri 

NIM   : 09031181320034 

Kelas  : Sistem Informasi Reguler 2B 

Komentar

Postingan populer dari blog ini

Do-Re-Mi-Fa-Sol-La-Si-Do

Do Re Mi Fa Sol La Si Do ... Siapa yang tidak tahu not ini ? Not  ini digunakan untuk membuat alunan musik dan disusun sedemikian rupa hingga menghasilkan musik yang indah dan berirama. Aku ingin mencari arti yang menarik dari not ini. Not dimulai dari Do dan berakhir di Do yang satu oktaf lebih tinggi dari Do pertama,dan diantaranya terdapat 6 not dengan intonasi yang berbeda dan semakin meninggi. Do Re Mi Fa Sol La Si Do...  seperti 7 langkah atau bisa juga disebut 7 jenjang yang diinginkan manusia dalam hidupnya, dan sudah pasti terjadi pada manusia tentunya dengan kehendak yang kuasa. Dimulai dari Do dan berakhir di Do, seperti "Aku diciptakan oleh Tuhan dan sudah dipastikan aku akan kembali kepadanya". Coba anda lantunkan not tersebut tanpa not  ke-7 "Do" pasti terasa ada yang kurang,atau tanpa not ke-1 , atau tanpa not ke-1 dan 7. Akan terasa canggung dan seperti kehilangan tangga  terakhir dalam lantunan itu. Aku harus menerima kenyata...

ARRAY (Kuliah Algoritma dan Pemograman 2 )

Apa Array itu ? Berikut adalah berbagai macam pengertian array : 1. Array adalah kum;pulan data bertipe sama yang mengginakan nama sama.  2. Array adalah larik atau koleksi dimana setiap elemen memakai nama yang sama dan bertipe sama dan setiap elemen diakses dengan menggunakan nama elemennya .  3. Array adalah struktur data hyang menyimpan sekum;piulan elemen yang bertipe sama, dan setiap elemen diakses langsung melalui indeksnya.  dari ketiga pengertian diatas dapat disimpulkan bahwa fungsi array adalah untuk meyumpan sekumpulan elemen (dengan catatan : tipenya sama). Array dapat dianalogikan sebagai lemari atau locker yang memiliki sederetan tempat penyimpanan dan untuk mengambil suatu barng tertentu kita hanya perlu mengingat agtau mengetahui nomor / kode pintunya saja. (dalam array disebut indeks).  Array dibedakan menjadi  1. Array berdimensi 1 2. Array berdimensi 2 3. Array berdimensi 3  ini adalah contoh array berdimensi s...