Bab 11
Prosedur
Pengetahuan :
1. Mahasiswa mampu memilih jenis modular yang tepat untuk
menyelesaikan permasalah tertentu.
2. Mahasiswa mampu membuktikan hasil penggunaan Prosedur pada suatu
proses bisnis.
3. Mahasiswa mampu menampilkan hasil penggunaan Prosedur pada
permasalahan tertentu .
Ketrampilan :
1. Mahasiswa dapat menunjukkan Inisiatif dan persistensi pada materi
Konsep Modular.
2. Mahasiswa dapat menunjukkan rasa Tanggung Jawab pada materi
Prosedur.
3. Mahasiswa dapat menunjukkan disiplin dan rasa ingin tahu yang
besar pada penerapan Prosedur.
4. Mahasiswa dapat menunjukkan rasa percaya diri dan keinginan kuat
saat menyelesaikan soal dengan Prosedur.
5. Mahasiswa dapat menunjukkan Kemampuan mengatur waktu dan
kecepatan belajar saat menyelesaikan soal dengan Prosedur.
6. Menunjukkan rasa senang belajar pada saat mengerjakan Latihan Soal
Prosedur.
128
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
Hal ini menyebabkan semakin banyak baris yang ditulis pada bagian main program
(Farrel, 2015).
Untuk mengatasi hal tersebut, maka dipecahlah kode program yang ditulis pada
main program menjadi program-program kecil, tanpa mengubah fungsi utamanya.
Program-program kecil inilah yang selanjutnya disebut sebagai Sub Program. Sub
Program merupakan bagian dari program utama yang dapat berdiri sendiri (Ariani S, 2018)
(Kadir, 2013). Kode program yang ditulis pada sub program dapat dijalankan, apabila sub
program tersebut dipanggil pada program utama. Namun sebaliknya, apabila telah
membuat sebuah sub program, namun tidak dipanggil pada program utama, maka sub
program tersebut tidak akan pernah dijalankan.
Seberapa penting
penggunaan Sub
Program pada
Algoritma ??
Beberapa manfaat yang dapat diambil apabila menggunakan sub program adalah
sebagai berikut:
1. Simplifikasi
Untuk memudahkan programmer, jika ada bagian pada program utama yang ditulis
berulang, cukup membuat sebuah sub program dan lakukan pemanggilan sub program
tersebut pada baris di program utama.
2. Modularisasi
Lebih mudah dalam mengolah dan menganalisis program (dalam mengoreksi,
memodifikasi dan menulis ulang program).
129
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
1. Prosedur (Procedure)
Prosedur adalah bagian dari suatu program yang disusun secara terpisah untuk
melakukan suatu tugas khusus/fungsi tertentu, tanpa mengembalikan nilai dari hasil proses
tersebut. Pada prosedur diijinkan melakukan penginputan dan pencetakan hasil output dari
sebuah proses, misalnya mencetak hasil penjumlahan dari proses aritmatika (Kadir, 2013).
2. Fungsi (Function)
Fungsi adalah bagian dari program yang dibuat terpisah untuk melaksanakan fungsi
tertentu yang menghasilkan suatu nilai untuk dikembalikan ke program utama (return)
(Kadir, 2013). Pada fungsi tidak diijinkan melakukan penginputan dan pencetakan hasil
output dari sebuah proses, misalnya mencetak hasil penjumlahan dari proses aritmatika.
Fungsi hanya bertugas sebagai tempat penampungan nilai sementara. Jika nilai tersebut
hendak dicetak, maka cetaknya pada program utama, bukan pada fungsi itu sendiri.
Mulai Masuk
Selesai Keluar
Pada Gambar 11.1 bentuk flowchart untuk Sub Program, pada saat pemanggilan
Sub Program, simbol flowchart yang digunakan berbeda, tidak seperti simbol flowchart
untuk proses pada umunya. Simbol flowchart untuk Sub Program mempunyai bentuk
persegi panjang yang mempunyai tambahan kotak pada samping kiri dan kanan. Ingat Bab
3.
130
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
Program Utama
Modul A
Kode Program 1 Kode Program A1
Kode Program 2 Kode Program A2
Kode Program 3 Kode Program A3
Call Modul A
Kode Program 5 Modul B
Kode Program 6 Kode Program B1
Call Modul B Kode Program B2
Kode Program 8 Kode Program B3
Call Modul A Kode Program B4
Kode Program 10 Kode Program B5
Bahan Baku
Pabrik
131
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
132
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
Adapun contoh bentuk Pseudocode dan Flowchart sederhana Penerapan Prosedur dapat
dilihat pada Gambar 14.4 dan Gambar 14.5.
Algoritma Utama :
Input : panjang, lebar
Panggil Procedure LuasPersPanjang()
Procedure LuasPersPanjang :
Rumus Luas Persegi Panjang = panjang x lebar
Output : Hasil Perhitungan Luas Persegi Panjang
Mulai Masuk
panjang = 0
lebar = 0
Keluar
CALL LuasPersPanjang
Selesai
133
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
ALGORITMA UTAMA
{Algoritma Menghitung Luas Persegi Panjang, panjang dan lebar
diinputkan terlebih dahulu}
Deklarasi :
panjang, lebar, luas : Integer
Deskripsi :
Panjang = 0
Lebar = 0
Print (panjang, lebar)
Procedure LuasPersPanjang()
PROCEDURE LuasPersPanjang()
{Menghitung Luas Persegi Panjang}
Deklarasi :
- (tidak ada)
Deskripsi :
luas = panjang * lebar
Print (luas)
Algoritma Utama :
Input : panjang, lebar
Panggil Procedure LuasPersPanjang(Input P, L)
Procedure LuasPersPanjang (Input P, L) :
Rumus Luas Persegi Panjang = P x L
Output : Hasil Perhitungan Luas Persegi Panjang
134
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
Mulai Masuk
luas = P * L
Input panjang. lebar
Print luas
CALL LuasPersPanjang
(panjang, lebar)
Keluar
Selesai
ALGORITMA UTAMA
{Algoritma Menghitung Luas Persegi Panjang, panjang dan lebar
diinputkan terlebih dahulu}
Deklarasi :
panjang, lebar: Integer
Procedure LuasPersPanjang (Input P, L :
integer)
Deskripsi :
Input (panjang, lebar)
LuasPersPanjang(panjang, lebar)
Deklarasi :
luas : integer
Deskripsi :
luas = P * L
Print (luas)
135
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
Algoritma Utama :
Input : panjang, lebar
Panggil Procedure LuasPersPanjang(Input P, L : integer; Output LS:integer)
Procedure LuasPersPanjang (Input P, L :integer; Output LS :integer) :
Rumus Luas Persegi Panjang = P x L
Output : Hasil Perhitungan Luas Persegi Panjang
Algoritma Utama
Mulai
Print luas
Selesai
136
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
ALGORITMA UTAMA
{Algoritma Menghitung Luas Persegi Panjang, panjang dan lebar
diinputkan terlebih dahulu}
Deklarasi :
panjang, lebar, luas: Integer
Procedure LuasPersPanjang(Input P,L :
integer, Output LS : integer)
Deskripsi :
Input (panjang, lebar)
LuasPersPanjang(panjang, lebar, luas)
Print (luas)
Algoritma Utama :
Input : Bil1, Bil2
Panggil Procedure Maksimum(I/O A1, A2 : integer)
Procedure Maksimum (I/O A1, A2 : integer) :
Mencari Angka Terbesar : if (A2>A1) then
tukar = A1
A1 = A2
A2 = tukar
end if
137
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
Mulai
Masuk
Bil1 : integer
Bil2 : integer
tukar : integer
Tidak
Input Bil1. Bil2 A2 > A1
Ya
CALL Maksimum
(Bil1, Bil2) tukar = A1
A1 = A2
A2 = tukar
Print A1
Keluar
Selesai
ALGORITMA UTAMA
{Algoritma Menentukan Nilai Terbesar, 2 buah bilangan diinputkan
terlebih dahulu}
Deklarasi :
Bil1, Bil2: Integer
Procedure Maksimum(I/O A1, A2 : Integer)
Deskripsi :
Input (Bil1, Bil2)
Maksimum(Bil1, Bil2)
Print (A1)
138
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
11.5 Rangkuman
Sub Program merupakan bagian dari program yang ditulis terpisah dari
program utama. Sub program dapat dijalankan apabila dipanggil
melalui program utama. Program Utama yang dibuat oleh seorang
programmer berfungsi untuk menggabungkan satu sub program atau
lebih agar dapat dapat dijalankan dengan baik dan benar.
Sub Program dibagi menjadi 2 yaitu Prosedur dan Fungsi.
Prosedur adalah bagian dari suatu program yang disusun secara terpisah
untuk melakukan suatu tugas khusus/fungsi tertentu, tanpa
mengembalikan nilai dari hasil proses tersebut.
Ada 3 jenis parameter formal yang dapat digunakan pada sub program,
yaitu Parameter Masukan, Parameter Keluaran, serta Parameter
Masukan dan Keluaran (I/O).
139
Logika Algoritma & Desain Pemrograman
Berbasis C-CHIL (Critical Creative Hybrid Independent Learning).
3. Menghitung Keliling dan Luas Lingkaran dengan inputan jari-jari dan konstanta phi =
3.14. Buat Flowchart dan Pseudocode menggunakan konsep Prosedur dengan 2
macam parameter yaitu parameter masukan dan keluaran.
4. Menentukan urutan tinggi badan dari 3 orang dengan inputan tinggi badan dari
masing-masing orang tersebut. Buat Flowchart dan Pseudocode menggunakan konsep
Prosedur dengan parameter masukan dan keluaran (I/O).
140