Rekursi ALPROG II Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 1.

Slides:



Advertisements
Presentasi serupa
REKURSIF.
Advertisements

PROCEDURE Temu IX BANGHER.
Algoritma Pemrograman II
STRUKTUR DATA Struktur Data - Gerlan A. Manu, ST.,MKom 1.
FUNGSI / FUNCTION ALGPROG II
Gerlan A. Manu, ST.,Mkom Struktur Data - Gerlan A. Manu,ST.,MKom1.
Procedure pada Pascal ALPROG II
Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I
PENGENALAN PASCAL STATEMENT TIPE DATA
GERLAN A. MANU, ST.,MKom Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I 1.
Dasar Komputer & Pemrog 2 A minggu 5. PROCEDURE DAN FUNCTION Procedure dan Function adalah suatu program yang terpisah dalam blok sendiri Dan memiliki.
Minggu V Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I 1.
Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I
PROCEDURE  PROCEDURE   Prosedur diawali dengan kata cadangan Procedure di dalam bagian deklarasi prosedur. Prosedur dipanggil dan digunakan di dalam blok.
PROSEDUR DAN FUNCTION PROSEDUR
STRUKTUR PERULANGAN Statemen ini di gunakan untuk memproses statemen-statemen tertentu berulang kali. Struktur perulangan While … Do Jenis perulangan.
Array Dimensi Banyak Gerlan A. Manu, ST.,MKom
Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I
REKURSIF.
MATERI 11. TAS Tanggal 30 Nopember 2011 (RABU). Jam 7-9 TUTUP BUKU Materi : 1-11.
Struktur Dasar Algoritma
MATERI 9 FUNGSI REKURSIF.
Membuat Fungsi A’ud Solehuddin::Februari2012. Materi Mendefinisikan fungsi Memahami variabel lokal dan variabel global Fungsi rekursif Validasi masukan.
Rekursi, Overloading, Konversi
PENYELEKSIAN KONDISI (PEMILIHAN)
Rekursif Yuliana Setiowati.
Pertemuan 2 INDUKSI MATEMATIKA & FUNGSI REKURSIF
sebuah fungsi yang memanggil dirinya sendiri
LOGIKA DAN ALGORITMA - PERTEMUAN 8 - REKURSI.
Algoritma Dasar Dalam membuat suatu program komputer, menyusun algoritma adalah langkah pertama yang harus dilakukan Dalam membuat algoritma dapat digunakan.
R EKURSI Gerlan A. Manu,ST
Computer Science, University of Brawijaya Putra Pandu Adikara, S.Kom Algoritma dan Struktur Data SubAlgoritma (Prosedur & Fungsi)
Latihan Array dan Matriks
Selamat datang Di Prosedur dan Fungsi. Sub Program “Adl Program kecil yg dpt di panggil berulang-ulang sesuai dg kebutuhan”  Manfaatnya: 1.Memudahkan.
Procedure & Function Sub Program.
PROSEDUR.
Pemprograman Terstruktur 1
BAB 3 RECURSIVE FUNCTION. RECURSIVE Fungsi rekursif adalah fungsi yang melakukan pemanggilan terhadap dirinya sendiri, sehingga proses yang terjadi adalah.
Materi Kuliah 1. Pertemuan ke : 1 Pengenalan Komputer dan Pemrograman
ALGORITMA PEMROGRAMAN 2A
ALGORITMA PEMROGRAMAN 2A
Fungsi & Prosedur.
Algoritma pemrograman 2a
SUBRUTIN.
Algoritma Pemrograman
MINGGU I ALGORITMA & PEMROGRAMAN II
Pengurutan (Sorting).
Gerlan A. Manu, ST Array Dimensi Banyak Gerlan A. Manu, ST
Array Dimensi Sri marini, ST.
Menuliskan Algoritma Dengan Pseudocode
REKURSI Struktur data.
Algoritma dan Struktur Data 1 pertemuan 10
Rekursif.
MULTIDIMENSI ARRAY Struktur Data
Dasar-Dasar Pemrograman
STRUKTUR PERULANGAN.
Procedure pada Pascal ALPROG II
Dasar-Dasar Pemrograman
Pemrograman VB.NET Pertemuan 4 Sorang Pakpahan,S.Kom.,M.Kom.
Sorting (Pengurutan).
Algoritma & Pemrograman Struktur Keputusan
Dasar-Dasar Pemrograman
PERTEMUAN III Menggunakan Pernyataan Bersyarat untuk Menyeleksi Kondisi Menggunakan Pernyataan Bersyarat untuk Menentukan Keputusan.
Rekursif Oleh : Oman Somantri, S.Kom
Pemrograman Repetisi pada Pascal Ramos Somya, S.Kom., M.Cs.
Dasar-Dasar Pemrograman
Dasar-Dasar Pemrograman
Dasar-Dasar Pemrograman
Sorting (Pengurutan).
Rekursif Yuliana Setiowati. Rekursif Proses yang memanggil dirinya sendiri. Merupakan suatu fungsi atau prosedur Terdapat suatu kondisi untuk berhenti.
Transcript presentasi:

Rekursi ALPROG II Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 1

Pengenalan Rekursi Proses dari suatu subprogram (dapat berupa fungsi atau prosedur) yang memanggil dirinya sendiri. Contoh : Procedure rekursi; Begin Write (‘Akademi Teknik Kupang’); Rekursi; End; {program utama} Begin Rekursi; End. Saat program ini dijalankan akan menampilkan tulisan “Akademi Teknik Kupang” terus menerus tanpa berhenti. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 2

Kondisi Pengakhiran rekursi Untuk menghentikan rekursi bisa dengan menggunakan kondisi seleksi atau if then,, Rekursi akan berhenti bila kondisi telah memenuhi syarat. Contoh : Rekursi akan dilakukan sebanyak 5 kali, yaitu dengan menyeleksi kondisi dari variabel akhir sampai bernilai 5. misalnya : Var akhir : word; Procedure rekursi; Begin if Akhir < 5 Then Begin write (‘Akademi Teknik Kupang’); Akhir := Akhir +1; Rekursi; end; {program utama} Begin Akhir := 0 Rekursi; End. Program akan menampilan “Akademi Teknik Kupang” sebanyak 5 kali Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 3

Latihan Buatlah program dengan rekursi untuk menampilkan bilangan dari 1 sampai 10? Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 4

Faktorial 1! = 1 2! = 1 x 2 3! = 1x 2 x 3 4! = 1 x 2 x 3 x 4 Dst….. Kalo diasumsikan N lebih besar 3 maka dapat dirumuskan : N! = N x (N-1) x (N-2) x …. x 1 Rumus tsb dapat didefinisikan secara rekursi : N ! = N x (N-1)! Mis : 5! = 5 * 4! 5! = 5 * 4 * 3! 5! = 5 * 4 * 3 * 2! 5! = 5 * 4 * 3 * 2 * 1 = 120 Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 5

Procedure Faktorial Procedure faktorial(N : byte; Var Hasil : Longint) Begin If N <= 1 Then Hasil := 1; else Begin faktorial(N-1, Hasil); hasil := N * Hasil; End; {program utama} Var N : byte; F : longint; Begin write (‘ Berapa faktorial = ‘); readLn (N); Faktorial(N,F); writeln (‘Faktorial = ‘, F); End; Prosedur by reference, Ingat-ingat kembali sifat dari prosedur by reference Memanggil prosedurnya sendiri coba ubah procedure faktorial diatas dalam bentuk fungsi! Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 6

Menara Hanoi Permasalahan yang paling terkenal dalam proses rekursi adalah menara hanoi (The Tower of Hanoi). Memindahkan sejumlah piringan dari satu menara ke menara yang lain. Pemindahan piringan dilakukan satu demi satu dan tidak boleh piringan yang lebih kecil berada di bawah piringan yang lebih besar. Untuk keperluan ini disediakan sebuah menara lagi untuk bantuan pemindahan. Gambar Menara Hanoi : A B C Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 7

A B C A B C A B C A B C A B C A B C A B C A B C A B C A B C 8

A B C A B C A B C A B C A B C A B C A B C Langkah 1 : pindahkan piring 1 dari A ke B Langkah 2 : pindahkan piring 2 dari A ke C Langkah 3: pindahkan piring 1 dari B ke C Langkah 4 : pindahkan piring 3 dari A ke B Langkah 5: pindahkan piring 1 dari C ke A Langkah 6: pindahkan piring 2 dari C ke B Langkah 7: pindahkan piring 1 dari A ke B Langkah 8: pindahkan piring 4 dari A ke C Langkah 9: pindahkan piring 1 dari B ke C Langkah 10: pindahkan piring 2 dari B ke A Langkah 11: pindahkan piring 1 dari C ke A Langkah 12: pindahkan piring 3 dari B ke C Langkah 13: pindahkan piring 1 dari A ke B Langkah 14: pindahkan piring 2 dari A ke C Langkah 15: pindahkan piring 1 dari B ke C Coba implementasikan algoritma diatas dalam bentuk procedure! Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 9

Kelemahan Rekursi Dalam beberapa kasus tertentu, rekursi dapat mempunyai kelemahan, yaitu suatu proses yang sudah dilakukan akan diproses ulang kembali, shingga membuat proses menjadi lama. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II 10