際際滷

際際滷Share a Scribd company logo
REKURSIF

Algoritma dan Pemrograman II

       Wilis Kaswidjanti
 Informatika UPN Veteran Yk
             2007



         wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II


                    REKURSIF

 Rekursif merupakan alat/cara untuk
  memecahkan masalah dalam suatu fungsi atau
  procedure yang memanggil dirinya sendiri.

 Definisi menurut Niclaus Wirth :
   An object is said be recursive if it partially consist
    or is defines in terms of itself


 perhitungan matematika ( contoh fungsi
  factorial dan bilangan Fibonacci)
                      wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II


                    Faktorial
 Fungsi factorial dari bilangan bulat positif n
  didefinisikan sebagai berikut:
     n!= n.(n-1)! , jika n>1
     n!= 1        , jika n=0, 1

 contoh :
     3!= 3. 2!
     3!= 3. 2. 1!
     3!= 3. 2. 1
     3!= 6

                    wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II
    Kita dapat menuliskan fungsi penghitung factorial
                  seperti dibawah ini
1.   int Faktorial(int n)
2. {
3.     if ((n == 0) || (n == 1 ))
4.          return (1);
5.     else
6.          return (n * Faktorial(n-1));
7. }
    Pada baris 3 dari fungsi diatas,
     nilai n dicek sama dengan 0 atau 1,
     jika ya, maka fungsi mengembalikan nilai 1 {baris 4},
     jika tidak, fungsi mengembalikan nilai n * Faktorial (n -1)
       {baris 6}
    disinilah letak proses rekursif itu, perhatikan fungsi
     factorial ini memanggil dirinya sendiri tetapi dengan
     parameter (n-1)      wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II


            Bilangan Fibonacci

 Fungsi lain yang dapat diubah ke bentuk
  rekursif adalah perhitungan Fibonacci.
  Bilangan Fibonacci dapat didefinisikan sebagai
  berikut:
      fn = fn-1 + fn-2 untuk n > 2
      f1 = 1
      f2 = 1
  Berikut ini adalah barisan bilangan Fibonacci
  mulai dari n=1
      1 1 2 3 wilis k - IFUPN"V"Yk 21 34
                        5 8 13
Algoritma dan Pemrograman II


 Algoritma Fibonacci yang dipakai
Function Fibonacci(input n:integer)  integer
Deklarasi Lokal
  {tidak ada}
Deskripsi
  If (n ==1 || n==2) Then
     return (l)
  Else
     return (Fibonacci(n-1)+Fibonacci(n-2))
  Endif




                  wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II

               Contoh

 Untuk ukuran n= 4, proses perhitungan
  Fibonacci dapat dilakukan sebagai
  berikut:
     f4 = f3+f2
     f4 = (f2+f1) + f2
     f4 = (1+1) +1
     f4 = 3

                wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II


                   Kombinasi
Function Kombinasi (input n, r : integer)  real
Deklarasi
 If (n < r) Then
  return (0)
 Else
  return (Faktorial(n)/Faktorial(r)*Faktorial(n-r))
 Endif




                    wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II


                 Permutasi
Function Permutasi (input n, r : integer)  real
Deklarasi
    {tidak ada}
 Deskripsi
    If (n< r) Then
           return (0)
    Else
           return (Faktorial(n) / Faktorial(n-r))
    Endif




                  wilis k - IFUPN"V"Yk
Algoritma dan Pemrograman II


              Latihan
1. Buat program untuk menghitung deret
   S = 1+2+3+4+5+...+n menggunakan
   function rekursi
2. Buat program untuk menghitung deret
   S = 2+4+6+8+10+...+2n menggunakan
   function rekursi



               wilis k - IFUPN"V"Yk
No.1 deret S=1+2+3+4+5++n
Function S(input n:integer)  integer
Deklarasi Lokal
  {tidak ada}
Deskripsi
  If (n==1) Then
     return (l)
  Else
     return (n + S(n-1))
  Endif


               wilis k - IFUPN"V"Yk
No.2 deret S=2+4+6+8+10++2n
Function S(input n:integer)  integer
Deklarasi Lokal
  {tidak ada}
Deskripsi
  If (n==1) Then
     return (2)
  Else
     return (2*n + S(n-1))
  Endif


               wilis k - IFUPN"V"Yk
No. 1 dalam bhs C++ (lengkap)
#include<iostream.h>
int S(int n);
main()
{
  int n;
  cout << Masukkan n = ; cin >> n;
  cout << Deret S=1+2+3+4+5+...+n n;
  cout << Jumlah deret S =  << S(n);
}
int S(int n)
{
      if (n == 1)
        return (1);
      else
        return (n + S(n-1));
}
                     wilis k - IFUPN"V"Yk
Ad

Recommended

PDF
Matematika Diskrit - 11 kompleksitas algoritma - 03
KuliahKita
PPTX
Finite State Automata - Materi 3 - TBO
ahmad haidaroh
PDF
Relasi Rekurensi
Heni Widayani
PPTX
Ruang Vektor ( Aljabar Linear Elementer )
Kelinci Coklat
PDF
Matematika Diskrit - 09 graf - 06
KuliahKita
PPT
Pertemuan 02 teori dasar himpunan
Fajar Istiqomah
PPTX
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
Ari Septiawan
PPTX
Matematika Diskrit Relasi Rekursif
Ayuk Wulandari
PDF
Matematika Diskrit - 06 relasi dan fungsi - 06
KuliahKita
PDF
Persamaan dan Pertidaksamaan Eksponen
Eman Mendrofa
PDF
Matematika Diskrit kombinatorial
Siti Khotijah
PDF
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
KuliahKita
PDF
5. Doubly Linked List (Struktur Data)
Kelinci Coklat
PDF
Prinsip Inklusi Eksklusi
Muhammad Alfiansyah
PPTX
teori graf (planar
Citra Chairani Haerul
PPTX
8 logika predikat
Yulinda Nurhafina
PPTX
SLIDE KE:5 NFA
Rahmatdi Black
PDF
Koefisien binomial
oilandgas24
PPTX
Bab 6 relasi
Cliquerz Javaneze
PPTX
Mrv 4.1 fitriana &amp; fatmala yunita ruang n- euclidis
Nunink Apriani
PDF
Matematika Diskrit - 09 graf - 07
KuliahKita
PDF
Vektor, Aljabar Linier
SartiniNuha
PPTX
Materi 3 Finite State Automata
ahmad haidaroh
PDF
Pengertian dan Representasi Graph
Zaldy Eka Putra
PPTX
Bab 5 penyederhanaan fungsi boolean
Cliquerz Javaneze
PPTX
6. interpolasi polynomial newton
Afista Galih Pradana
PPTX
Sistem Persamaan Linear (SPL) Aljabar Linear Elementer
Kelinci Coklat
PPTX
Bab 4 aljabar boolean
Cliquerz Javaneze
DOC
Dasar Pemrograman materi kuliah
Braga Rezpect
PPT
Tistrukdat9
Antonius Rachmat C

More Related Content

What's hot (20)

PDF
Matematika Diskrit - 06 relasi dan fungsi - 06
KuliahKita
PDF
Persamaan dan Pertidaksamaan Eksponen
Eman Mendrofa
PDF
Matematika Diskrit kombinatorial
Siti Khotijah
PDF
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
KuliahKita
PDF
5. Doubly Linked List (Struktur Data)
Kelinci Coklat
PDF
Prinsip Inklusi Eksklusi
Muhammad Alfiansyah
PPTX
teori graf (planar
Citra Chairani Haerul
PPTX
8 logika predikat
Yulinda Nurhafina
PPTX
SLIDE KE:5 NFA
Rahmatdi Black
PDF
Koefisien binomial
oilandgas24
PPTX
Bab 6 relasi
Cliquerz Javaneze
PPTX
Mrv 4.1 fitriana &amp; fatmala yunita ruang n- euclidis
Nunink Apriani
PDF
Matematika Diskrit - 09 graf - 07
KuliahKita
PDF
Vektor, Aljabar Linier
SartiniNuha
PPTX
Materi 3 Finite State Automata
ahmad haidaroh
PDF
Pengertian dan Representasi Graph
Zaldy Eka Putra
PPTX
Bab 5 penyederhanaan fungsi boolean
Cliquerz Javaneze
PPTX
6. interpolasi polynomial newton
Afista Galih Pradana
PPTX
Sistem Persamaan Linear (SPL) Aljabar Linear Elementer
Kelinci Coklat
PPTX
Bab 4 aljabar boolean
Cliquerz Javaneze
Matematika Diskrit - 06 relasi dan fungsi - 06
KuliahKita
Persamaan dan Pertidaksamaan Eksponen
Eman Mendrofa
Matematika Diskrit kombinatorial
Siti Khotijah
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
KuliahKita
5. Doubly Linked List (Struktur Data)
Kelinci Coklat
Prinsip Inklusi Eksklusi
Muhammad Alfiansyah
teori graf (planar
Citra Chairani Haerul
8 logika predikat
Yulinda Nurhafina
SLIDE KE:5 NFA
Rahmatdi Black
Koefisien binomial
oilandgas24
Bab 6 relasi
Cliquerz Javaneze
Mrv 4.1 fitriana &amp; fatmala yunita ruang n- euclidis
Nunink Apriani
Matematika Diskrit - 09 graf - 07
KuliahKita
Vektor, Aljabar Linier
SartiniNuha
Materi 3 Finite State Automata
ahmad haidaroh
Pengertian dan Representasi Graph
Zaldy Eka Putra
Bab 5 penyederhanaan fungsi boolean
Cliquerz Javaneze
6. interpolasi polynomial newton
Afista Galih Pradana
Sistem Persamaan Linear (SPL) Aljabar Linear Elementer
Kelinci Coklat
Bab 4 aljabar boolean
Cliquerz Javaneze

Similar to 4 rekursi (20)

DOC
Dasar Pemrograman materi kuliah
Braga Rezpect
PPT
Tistrukdat9
Antonius Rachmat C
PPT
Bab 8 rekursif
arii_manroe
DOCX
modul algoritma Bab 5
Eko Widyanto Napitupulu
PPTX
Subrutin_Fungsi.pptx
AriesAgetia1
PPTX
13_Rekursif.pptx
SapaFilut
PPTX
Algoritma rekursif
Universitas Teknokrat Indonesia
PPTX
09 pd fungsi rekursif
Sofi Orient
PPTX
8 Rekursif
ahmad haidaroh
PDF
Materi Algortma dan Pemrograman - Rekursif.pdf
ssuserb953aa
PDF
6 rekursif induksi matematik.pdf
NestyoRizky
PPTX
Algoritma pemrograman 14
ZainalAbidin909479
PPTX
Fungsi_Rdffffffffffffffffffffffffffekursif.pptx
firdaustommy1
PDF
mencari nilai minimum menggunakan fungsi rekursif di C
kir yy
PPTX
Presentation
Ainy Sara
DOCX
MAKALAH REKRUSIF (DIKI CANDRA).docx
Dikicandra6
DOCX
Fungsi Rekursif
Nida Shafiyanti
PPTX
Materi Rekrusif dengan Python PPTX (materi kuliah)
OzanHacker
PDF
Tugas C++ - Dian Aditya - 2009/2010
Dian Aditya
PDF
Pertemuan 6 Rekursif
Endang Retnoningsih
Dasar Pemrograman materi kuliah
Braga Rezpect
Tistrukdat9
Antonius Rachmat C
Bab 8 rekursif
arii_manroe
modul algoritma Bab 5
Eko Widyanto Napitupulu
Subrutin_Fungsi.pptx
AriesAgetia1
13_Rekursif.pptx
SapaFilut
Algoritma rekursif
Universitas Teknokrat Indonesia
09 pd fungsi rekursif
Sofi Orient
8 Rekursif
ahmad haidaroh
Materi Algortma dan Pemrograman - Rekursif.pdf
ssuserb953aa
6 rekursif induksi matematik.pdf
NestyoRizky
Algoritma pemrograman 14
ZainalAbidin909479
Fungsi_Rdffffffffffffffffffffffffffekursif.pptx
firdaustommy1
mencari nilai minimum menggunakan fungsi rekursif di C
kir yy
Presentation
Ainy Sara
MAKALAH REKRUSIF (DIKI CANDRA).docx
Dikicandra6
Fungsi Rekursif
Nida Shafiyanti
Materi Rekrusif dengan Python PPTX (materi kuliah)
OzanHacker
Tugas C++ - Dian Aditya - 2009/2010
Dian Aditya
Pertemuan 6 Rekursif
Endang Retnoningsih
Ad

4 rekursi

  • 1. REKURSIF Algoritma dan Pemrograman II Wilis Kaswidjanti Informatika UPN Veteran Yk 2007 wilis k - IFUPN"V"Yk
  • 2. Algoritma dan Pemrograman II REKURSIF Rekursif merupakan alat/cara untuk memecahkan masalah dalam suatu fungsi atau procedure yang memanggil dirinya sendiri. Definisi menurut Niclaus Wirth : An object is said be recursive if it partially consist or is defines in terms of itself perhitungan matematika ( contoh fungsi factorial dan bilangan Fibonacci) wilis k - IFUPN"V"Yk
  • 3. Algoritma dan Pemrograman II Faktorial Fungsi factorial dari bilangan bulat positif n didefinisikan sebagai berikut: n!= n.(n-1)! , jika n>1 n!= 1 , jika n=0, 1 contoh : 3!= 3. 2! 3!= 3. 2. 1! 3!= 3. 2. 1 3!= 6 wilis k - IFUPN"V"Yk
  • 4. Algoritma dan Pemrograman II Kita dapat menuliskan fungsi penghitung factorial seperti dibawah ini 1. int Faktorial(int n) 2. { 3. if ((n == 0) || (n == 1 )) 4. return (1); 5. else 6. return (n * Faktorial(n-1)); 7. } Pada baris 3 dari fungsi diatas, nilai n dicek sama dengan 0 atau 1, jika ya, maka fungsi mengembalikan nilai 1 {baris 4}, jika tidak, fungsi mengembalikan nilai n * Faktorial (n -1) {baris 6} disinilah letak proses rekursif itu, perhatikan fungsi factorial ini memanggil dirinya sendiri tetapi dengan parameter (n-1) wilis k - IFUPN"V"Yk
  • 5. Algoritma dan Pemrograman II Bilangan Fibonacci Fungsi lain yang dapat diubah ke bentuk rekursif adalah perhitungan Fibonacci. Bilangan Fibonacci dapat didefinisikan sebagai berikut: fn = fn-1 + fn-2 untuk n > 2 f1 = 1 f2 = 1 Berikut ini adalah barisan bilangan Fibonacci mulai dari n=1 1 1 2 3 wilis k - IFUPN"V"Yk 21 34 5 8 13
  • 6. Algoritma dan Pemrograman II Algoritma Fibonacci yang dipakai Function Fibonacci(input n:integer) integer Deklarasi Lokal {tidak ada} Deskripsi If (n ==1 || n==2) Then return (l) Else return (Fibonacci(n-1)+Fibonacci(n-2)) Endif wilis k - IFUPN"V"Yk
  • 7. Algoritma dan Pemrograman II Contoh Untuk ukuran n= 4, proses perhitungan Fibonacci dapat dilakukan sebagai berikut: f4 = f3+f2 f4 = (f2+f1) + f2 f4 = (1+1) +1 f4 = 3 wilis k - IFUPN"V"Yk
  • 8. Algoritma dan Pemrograman II Kombinasi Function Kombinasi (input n, r : integer) real Deklarasi If (n < r) Then return (0) Else return (Faktorial(n)/Faktorial(r)*Faktorial(n-r)) Endif wilis k - IFUPN"V"Yk
  • 9. Algoritma dan Pemrograman II Permutasi Function Permutasi (input n, r : integer) real Deklarasi {tidak ada} Deskripsi If (n< r) Then return (0) Else return (Faktorial(n) / Faktorial(n-r)) Endif wilis k - IFUPN"V"Yk
  • 10. Algoritma dan Pemrograman II Latihan 1. Buat program untuk menghitung deret S = 1+2+3+4+5+...+n menggunakan function rekursi 2. Buat program untuk menghitung deret S = 2+4+6+8+10+...+2n menggunakan function rekursi wilis k - IFUPN"V"Yk
  • 11. No.1 deret S=1+2+3+4+5++n Function S(input n:integer) integer Deklarasi Lokal {tidak ada} Deskripsi If (n==1) Then return (l) Else return (n + S(n-1)) Endif wilis k - IFUPN"V"Yk
  • 12. No.2 deret S=2+4+6+8+10++2n Function S(input n:integer) integer Deklarasi Lokal {tidak ada} Deskripsi If (n==1) Then return (2) Else return (2*n + S(n-1)) Endif wilis k - IFUPN"V"Yk
  • 13. No. 1 dalam bhs C++ (lengkap) #include<iostream.h> int S(int n); main() { int n; cout << Masukkan n = ; cin >> n; cout << Deret S=1+2+3+4+5+...+n n; cout << Jumlah deret S = << S(n); } int S(int n) { if (n == 1) return (1); else return (n + S(n-1)); } wilis k - IFUPN"V"Yk