Oops! It appears that you have disabled your Javascript. In order for you to see this page as it is meant to appear, we ask that you please re-enable your Javascript!

contoh dan Definisi Fungsi dalam Algoritma

in Algoritma on April 23, 2015

Image result for algoritma dan pemrograman
Fakta (Kode yang Berulang)

Semakin besar program, akan semakin banyak bagian kode
yang berulang
• Sangat tidak efisien jika bagian kode yang sama/serupa diketik berulang-ulang atau bahkan termasuk kalau dicopy paste
• Di samping itu, dalam banyak persoalan, ada berbagai rumus/formula yang berulang-ulang dipakai dalam satu program
• Bagaimana jika ada cara supaya bagian kode tersebut tidak perlu diketik berulang-ulang, tapi tetap dapat digunakan berkali-kali dalam program yang sama
Subprogram
“ A set of instructions designed to perform a frequently
used operation within a program “
• 2 (dua) jenis subprogram:
• Fungsi
• Prosedur
Image result for algoritma dan pemrograman fungsi
Definisi Fungsi
Fungsi adalah sebuah transformasi akibat pemetaan suatu nilai (dari domain) ke nilai lain (dalam range)  sama seperti di matematika
• Fungsi mempunyai nama dan sekelompok parameter formal (harga masukan yang diberi nama dan dijelaskan type-nya) serta memiliki hasil (dalam suatu type tertentu pula)
• Fungsi harus didefinisikan terlebih dahulu supaya dapat digunakan dalam bagian ALGORITMA program
1. Mendefinisikan fungsi
• Memberikan nama
• Mendefinisikan parameter formal (parameter input)
• Mendefinisikan type hasil
2. Merealisasikan fungsi
• Membuat algoritma fungsi: memroses input hasil
3. Menggunakan fungsi dalam program utama
• Memanggil fungsi dengan menggunakan parameter aktual
Contoh Fungsi
Fungsi bernama f(x) memiliki satu parameter x
didefinisikan sebagai f(x) = x
2+ 3x -5
• jika diberi harga x = 4 maka f(x) akan menghasilkan 23
• jika diberi harga x = 1 maka f(x) akan menghasilkan -1
• Fungsi f(x,y) memiliki dua parameter x dan y,
didefinisikan sebagai f(x,y) = x
2+ 3xy – 5y – 1
• jika diberi harga x = 0 dan y = 0 maka f(x,y) akan menghasilkan
-1
• jika diberi harga x = 1 dan y = 0 maka f(x,y) akan menghasilkan 0
Mendefinisikan Fungsi (2)
Parameter input boleh tidak ada (kosong)
• Fungsi tidak membutuhkan apa-apa dari pemakainya untuk
menghasilkan harga
• Jika list parameter input (parameter FORMAL) ada (tidak
kosong, minimal satu nama), maka merupakan satu atau
beberapa nama beserta type-nya satu atau beberapa nama
beserta type-nya
• Fungsi harus menghasilkan suatu harga
• Harga yang dihasilkan oleh fungsi harus memiliki type tertentu.
Pemanggilan Fungsi (1)
Fungsi hanya dapat dipakai sebagai bagian ekspresi
bukan merupakan suatu instruksi yang dipanggil
independen
• Dalam ekspresi, fungsi hanya dapat diletakkan di ruas kanan 
• Saat pemanggilan terjadi korespondensi antara parameter input (formal) dengan parameter aktual sesuai dengan urutan penulisan dalam list-nama parameter input penulisan dalam list-nama parameter input
• List parameter aktual harus sama jumlah, urutan, dan typenya dengan list parameter input pada pendefinisian fungsinya
Pemanggilan Fungsi (2)
Harga yang dihasilkan oleh fungsi dapat didefinisikan
domainnya dengan lebih rinci
• Pada akhir dari eksekusi fungsi, harga yang dihasilkan
oleh fungsi dikirimkan ke pemakainya
• Fungsi boleh dipakai oleh program utama, prosedur, atau
fungsi lain
Contoh 1 : Fungsi Konversi
• Persoalan:
• Tuliskanlah sebuah fungsi, yang mengkonversikan harga karakter angka (nol
sampai dengan 9) menjadi harga numerik sesuai dengan karakter yang tertulis.
Contoh:
• ‘0’
→ 0
• ‘8’
→ 8
• ‘8’
→ 8
• Berikan contoh pemakaian
• Spesifikasi :
• Fungsi KarakterToInteger :
• Domain : x : character [‘0’..’9′] )
• Range : integer [0..9]
• Proses : analisis kasus terhadap x, untuk setiap harga x diasosiasikan
integer yang sesuai.

Categories: Algoritma