Fungsi Rekursif.

Slides:



Advertisements
Presentasi serupa
REKURSIF.
Advertisements

soal Advanced class Fertures
Introduction to Algorithm evaluation Soal Matrikulasi Buka Buku
Pertemuan 1 Rekursi jual [Valdo] Lunatik Chubby Stylus.
Apakah Recursion itu ? Dr. Anto Satriyo Nugroho, M.Eng
Subprogram Program kecil yang melakukan tugas tertentu dan merupakan bagian dari program secara keseluruhan Keuntungan : Mudah dikodekan Mudah dipahami.
Design and Analysis of Algorithm Recursive Algorithm Analysis
Suksesor bilangan asli adalah bilangan asli
Algoritma dan Struktur Data
Fungsi, Parameter, Rekursi Daniel Riano Kaparang Book reference: Jogiyanto. Konsep Dasar Pemrograman Bahasa C. Andi Star. Yogyakarta Kristanto Andri.
REKURSIF.
MATERI 9 FUNGSI REKURSIF.
Rekursif Yuliana Setiowati.
Desain dan Analisis Algoritma
Pertemuan 2 INDUKSI MATEMATIKA & FUNGSI REKURSIF
REKURSIF Matakuliah : T0974 / Algoritma dan Metode Object Oriented Programming I Tahun : 2008 Versi : 1/0.
Design and Analysis of ALGORITHM (Session 3)
Pemrograman Terstruktur
sebuah fungsi yang memanggil dirinya sendiri
PART 7 TEKNIK REKURSIF DOSEN : AHMAD APANDI, ST.
Sumber Kepustakaan : indryz.lecture.ub.ac.id/.../analisa-efisiensi- algoritm... 1  Fungsi yang memanggil dirinya sendiri  Sebuah fungsi f juga merupakan.
LOGIKA DAN ALGORITMA - PERTEMUAN 8 - REKURSI.
FUNGSI MATEMATIKA DISKRIT K- 6 Universitas Indonesia
STRUKTUR DATA recursive function.
Fungsi Fungsi.
Design and Analysis Algorithm
Algoritma dan Struktur Data
BAB 3 RECURSIVE FUNCTION. RECURSIVE Fungsi rekursif adalah fungsi yang melakukan pemanggilan terhadap dirinya sendiri, sehingga proses yang terjadi adalah.
PERCABANGAN By Adnan Purwanto, S.Kom.
STRUKTUR DATA (10) recursive function
Algoritma dan Struktur Data
Bina Nusantara Mata kuliah:K0144/ Matematika Diskrit Tahun:2008 FUNGSI REKURSIF Pertemuan 10:
Rekursif Rizki Muliono,M.Kom.
Algoritma dan Pemrograman Subrutin
Pertemuan 1 Rekursi jual [Valdo] Lunatik Chubby Stylus.
MATERI PERKULIAHAN ANALISIS ALGORITMA
MATERI PERKULIAHAN ANALISIS ALGORITMA
DIG1G3 Implementasi Struktur Data
BAB 4 PERNYATAAN IF DAN CASE.
REKURSIF Learning Outcomes Pada akhir pertemuan ini, mahasiswa mampu:
BAB 3 PERNYATAAN IF DAN CASE.
Mata kuliah :K0362/ Matematika Diskrit Tahun :2008
Pertemuan 13 DYNAMIC PROGRAMMING : FIBONACCI SEQUENCE PROBLEM
Algoritma dan Pemrograman Subrutin
Pseudo-code.
REKURSI Struktur data.
Algoritma Percabangan
Algoritma dan Struktur Data 1 pertemuan 10
Algoritma dan Pemrograman Subrutin (Function)
Array Buat algoritma untuk mencari nilai terbesar dari 5 nilai mahasiswa yang diinputkan dengan array.
FUNGSI.
Modul-7 : Analisis Algoritma dan Struktur data
Seleksi Kondisi merupakan perintah yang memungkinkan pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi tertentu. Operator yang digunakan.
Algoritma dan Pemrograman Subrutin
FUNGSI.
Algoritma dan Pemrograman Rekursif
~ PERTEMUAN 8 STRUKTUR REKURSIF ~
Rekursif- studi kasus.
Recursive function.
STRUKTUR DATA (10) recursive function
PART 7 TEKNIK REKURSIF DOSEN : AHMAD APANDI, ST.
Algoritma Rekursif.
STRUKTUR DATA.
Algoritma Rekursif Alpro-2.
Rekursif By Serdiwansyah N. A..
Analisa algoritma rekursif
Pencabangan.
Rekursif Oleh : Oman Somantri, S.Kom
Dasar-Dasar Pemrograman
Rekursif Yuliana Setiowati. Rekursif Proses yang memanggil dirinya sendiri. Merupakan suatu fungsi atau prosedur Terdapat suatu kondisi untuk berhenti.
Transcript presentasi:

Fungsi Rekursif

Fungsi Rekursif Definisi fungsi rekursif. Contoh 1 : Faktorial Contoh 2 : Perkalian Contoh 3 : Fibonacci Contoh 4 : Tower of Hanoi

Fungsi Rekursif Fungsi biasa dipanggil oleh fungsi lain. Sedangkan fungsi rekursif dipanggil oleh dirinya sendiri. A B C D A A A A

Fungsi Rekursif Setara dengan proses looping/ iterasi  faktorial, perkalian Kadang rekursif lebih baik dari iterasi  tower of hanoi Terkadang sebaliknya  fibonacci Komponen : Way out  if – else + return() Recursive call dengan value baru

Simple Example def endless puts “Never end” endless() return 0 end

Faktorial ALGORITMA n! = 1 if n == 0 n! = n * ( n – 1 )! if n > 0 4! = 4 x 3! 3! = 3 x 2! 2! = 2 x 1! 1! = 1 x 0! 0! = 1 SOURCE CODE def factorial(n) if n==0 then return 1 end x=n-1 y=factorial(x) return (n*y) puts factorial(5)

Latihan tracing rekursi

Perkalian ALGORITMA a * b = a if b == 1 a * b = a * ( b – 1 ) + a if b > 1 6 x 3 = ( 6 x 2 ) + 6 = ( 6 x 1 ) + 6 + 6 = 6 + 6 + 6 = 18 SOURCE CODE def mult(a,b) if b==1 then return a end c=b-1 d=mult(a,c) sum=d+a return (sum) puts mult(3,4) puts mult(5,8)

Latihan tracing rekursi

Fibonacci The Fibonacci series fn≥0 is a famous series defined by: f0 :≡ 0, f1 :≡ 1, fn≥2 :≡ fn−1 + fn−2 f2 = f0 + f1 = 0 + 1 = 1 f3 = f1 + f2 = 1 + 1 = 2 f4 = f2 + f3 = 1 + 2 = 3 f5 = f3 + f4 = 2 + 3 = 5 …. Leonardo Fibonacci 1170-1250

Fibonacci ALGORITMA fibo( n ) = n if n == 0 or n == 1 fibo( n ) = fibo(n – 2) + fibo( n – 1 ) if n >= 2 fibo( 4 ) = fibo( 3 ) + fibo( 2 ) = fibo( 2 ) + fibo ( 1 ) + fibo( 2 ) = fibo(1) + fibo(0) + fibo(1) + fibo(2) = 1 + fibo(0) + fibo(1) + fibo(2) = 1 + 0 + fibo(1) + fibo(2) = 1 + fibo(1) + fibo(2) = 1 + 1 + fibo(2) = 2 + fibo(2) = 2 + fibo(1) + fibo(0) = 2 + 1 + fibo(0) = 2 + 1 + 0 = 2 + 1 = 3 SOURCE CODE def fibo(n) if n<=1 then return n end x=fibo(n-1) y=fibo(n-2) return (x+y) puts fibo(4) puts fibo(8)

Tracing Fibonacci fibo (4) = ? F(4) 2+1=3 1+0=1 1+1=2 F(2) F(1) F(0) 1+0=1 1 F(1) F(2) F(1) F(0) 1

Towers of Hanoi ALGORITMA If n == 1, move the single disk from A to C and stop. Move the top n – 1 disks from A to B, using C as auxiliary. Move the remaining disk from A to C. Move the n – 1 disks from B to C, using A as auxiliary. SOURCE CODE def towers(n,from,to,aux) if n==1 then puts "move disk 1 from #{from} to #{to}" return end towers(n-1,from,aux,to) puts "move disk #{n} from #{from} to #{to}" towers(n-1,aux,to,from) towers(3,'A','C','B') #call method towers with 4 parameters

Tracing Towers of Hanoi towers(3, A, C, B) = ?

Tugas : TRACING towers(4, A, C, B) = ? fibo(6) = ? factorial(5)=? mult(3,5)=?