pb3mat_pertemuan 9 algoritma pemrograman

halimagung3 0 views 17 slides Sep 27, 2025
Slide 1
Slide 1 of 17
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17

About This Presentation

materi


Slide Content

Fungsi

Definisi (1)
•Merupakan suatu bagian dari program yang
dibuat secara terpisah untuk melaksanakan
fungsi tertentu yang menghasilkan suatu nilai
untuk dikembalikan ke program utama.

Definisi (2)
•Fungsi adalah sebuah transformasi akibat
pemetaan suatu nilai ke nilai lain
•Secara algoritmik, fungsi akan menerima
harga yang diberikan lewat parameter formal
dan menghasilkan nilai sesuai dengan definisi
dalam spesifikasinya

Definisi (3)
•Dalam penulisannya fungsi terdiri dari:
–Nama fungsi
–Parameter formal
–Type hasil
•Fungsi yang telah didefinisikan dapat
“dipanggil” untuk dieksekusi lewat namanya
dan diberikan parameter aktual

Definisi (4)
•Contoh fungsi:
f(x) = 2x+4
Fungsi diatas memiliki parameter x :
jika x=4 maka f(x) akan menghasilkan 12
Jika x=1 maka f(x) akan menghasilkan 6

Notasi Algoritmik Fungsi
function Nama_Fungsi (input parameter)
{ Berisi penjelasan apa yang dikembalikan fungsi }
DEKLARASI
{ Semua nama yang dipakai di dalam fungsi }
ALGORITMA:
{ Badan prosedur, berisi urutan instruksi }
return ekspresi { Pengembalian nilai yang
dihasilkan fungsi}

Notasi Algoritmik Fungsi (2)
Dengan syarat :
•List parameter input boleh tidak ada (kosong), dalam hal ini di fungsi tidak membutuhkan apa-apa dari pemakainya untuk menghasilkan harga.
•Jika list parameter input (parameter formal) tidak kosong, minimal mengandung satu nama, maka nama tersebut harus berupa nama informasi.
•Instruksi “terakhir” yang harus ada pada fungsi harus merupakan pengiriman harga yang dihasilkan oleh fungsi (dituliskan seperti pada notasi di
atas, dengan type hasil boleh type dasar atau type terstruktur). Type hasil boleh dinyatakan oleh suatu nama type. Dengan catatan, bahwa
instruksi “terakhir” belum tenttu dituliskan pada baris terakhir, misalnya jika hasil merupakan sebuah nilai yang dikirimkan berdasarkan analisa
kasus.

Penulisan Fungsi (1)
•Menulis Fungsi hampir sama dengan menulis
sebuah program, yaitu ada bagian header,
kamus dan algoritma
•Misalkan akan dibuat fungsi yang berguna
untuk melakukan konversi dari nilai celcius ke
reamur

Penulisan Fungsi (2)
•NB: Kamus yang ada pada deklarasi fungsi
merupakan kamus lokal (nama-nama yang
didefinisikan hanya dikenali dalam blok fungsi)

Penulisan Fungsi

Pemanggilan Fungsi
Fungsi dipanggil dari program pemanggil dengan
menuliskan nama_fungsi diikuti dengan parameter
aktual.
Nilai yang dikembalikan fungsi dapat diperlakukan
dengan dua cara:
1.Nilai yang dikembalikan oleh fungsi dapat langsung
dimanipulasi.
2.Nilai yang dikembalikan oleh fungsi ditampung dalam
sebuah peubah yang bertipe sama dengan tipe fungsi.

Pemanggilan Fungsi (1)

Pemanggilan Fungsi [2]
catatan :
1.Pada waktu pemanggilan terjadilah asosiasi antara pamater formal atau
input dengan parameter aktual sesuai dengan urutan penulisan dalam list-
nama paramater input.
2.List parameter input dapat berupa nama informasi atau nama konstanta
yang telah terdefinisi dalam kamus atau konstannta, dapat juga berupa harga
konstanta, atau harga yang dihasilkan oleh suatu ekspresi atau fungsi.
3.List parameter aktual harus sama jumlah, urutan dan typenya dengan list
parameter formal pada pendefinisian fungsinya.
4.Harga yang dihasilkan oleh fungsi dapat didefinisikan domainnya dengan
lebih rinci
5.Pada akhir dari eksekusi fungsi, harga yang dihasilkan oleh fungsi dikirimkan
ke pemakainya.
6.Fungsi boleh dipakai oleh progam utama, prosedur atau fungsi lain.

Contoh Algoritma Program Pemanggil
PROGRAM Genap_Ganjil
{ Menentukan apakah sebuah bilangan genap atau
ganjil }
DEKLARASI
x : integer

function Genap(input n : integer)  int
ALGORITMA:
read (x)
if Genap(x)=0 then
write(‘genap’)
else
write(‘ganjil’)
endif

Contoh Algoritma Fungsi
function Genap(input n : integer) int
{Mengembalikan 0 jika n genap atau 1 jika ganjil }
DEKLARASI
{tidak ada}
ALGORITMA:
return (n mod 2)

Contoh Algoritma Program Pemanggil
PROGRAM Hitung_Titik_Tengah
{ Menghitung koordinat antara dua titik }
DEKLARASI
type Titik : record < x,y : real >
P1, P2,Pt : Titik {Pt titik tengah antara P1 dan
P2}

function Titik_Tengah(input P1,P2 : Titik) Titik
ALGORITMA:
read (P1.x, P1.y)
read (P2.x, P2.y)
Pt  Titik_Tengah(P1,P2)
write (Pt.x,Pt.y)

Contoh Algoritma Fungsi
function Titik_Tengah(input P1,P2 : Titik) Titik
{ Mengembalikan titik tengah dari P1 dan P2 }
DEKLARASI
{tidak ada}
ALGORITMA:
Pt.x  (P1.x + P2.x)/2
Pt.y  (P1.y + P2.y)/2
return Pt
Tags