Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehYoan Yang Telah diubah "10 tahun yang lalu
1
DEPARTEMEN ILMU KOMPUTER FMIPA IPB 2011 Praktikum Bahasa Pemrograman
2
#4. Recursion Recursion is a procedure that calls itself PLT SCHEME
3
Example 1 (1) totoharyanto@ipb.ac.id 3 Calculate nth power of some number m m x m n-1, for n>0 m n = 1,for n = 0 Functional (define (higher m n) (if (zero? n) 1 (* m (lower m (- n 1)))) ) (define (lower m n) (higher m n) ) (higher 2 3)
4
Example 1 (2) totoharyanto@ipb.ac.id 4 Recursive (define (higher m n) (if (zero? n) 1 (* m (higher m (- n 1)))) ) * (higher 2 3)
5
Example 2 totoharyanto@ipb.ac.id 5 Fibonacci function f(n-1) + f(n-2), for n> 1 f(n) = 1, for n = 1 1, for n = 0 “fibo.ss” (define (fibonacci n) (if (or (= n 0) (= n 1)) 1 (+ (fibonacci (- n 1)) (fibonacci (- n 2)))) ) * (fibonacci 4)
6
Exercises 1 totoharyanto@ipb.ac.id 6 Buatlah fungsi untuk menghitung jumlah elemen dalam list * (count-elements '(fast computer are nice)) 4 * (count-elements '()) 0 * (count-elements '(())) 1 * (count-elements '(fast computer () are nice)) 5 * (count-elements '(sqrt (expt x 2) (expt y 3))) 3
7
Example 3 totoharyanto@ipb.ac.id 7 Faktorial Faktorial(n) = 1 ; if n = 0 or 1 (n * Faktorial (n -1) ) ; if n > 1 Buatlah kode program dalam PLT SCHEME ?
8
Fungsi Apakah ini ? totoharyanto@ipb.ac.id 8 Diberikan pseudocode sebagai Berikut ! int jumlah(int a, int b) { if (b==0) return a; else return 1+jumlah(a,b-1); } Tugas! 1. Terjemahkan ke dalam PLT SCHEME 2. Telusuri fungsi tersebut jika dipanggil dengan jumlah(3,2)
9
Exercises 2 totoharyanto@ipb.ac.id 9 Buatlah fungsi elemen-ke dari suatu list > (nth 3 '(1 2 3 4 5)) 3 > (nth 0 '(0 1 2 3 4 5)) error > (nth 5 '(1 2 3 4 5)) 5 > (nth 6 '(1 2 3 4 5)) error
10
Exercises 3 totoharyanto@ipb.ac.id 10 Buat fungsi remove-last untuk membuang elemen terakhir dari suatu list * (remove-last ‘(a b c)) (a b) * (remove-last '(a)) () * (remove-last '()) () Buat fungsi jumlah untuk menjumlahkan elemen yang bernilai genap dalam suatu list !
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.