SlideShare a Scribd company logo
1 of 32
Topik 9
Prosedur
Algoritma & Struktur Data
PS. Manajemen Informatika
Sub Topik
1. Konsep Pemrograman Modular
2. Prosedur
3. Nama Lokal & Global
4. Parameter
5. Parameter Masukan
6. Parameter Keluaran
7. Parameter Masukan/Keluaran
Tujuan
Tujuan Instruksional Umum :
Mahasiswa diharapkan mampu membuat algoritma
dengan prosedur
Tujuan Instruksional Khusus :
 Mahasiswa mampu memahami konsep
pemrograman modular
 Mahasiswa mampu memahami penggunaan nama
lokal & global
 Mahasiswa mampu memahami penggunaan
parameter
 Mahasiswa mampu membuat algoritma dengan
prosedur
Konsep Pemrograman Modular
 Program yang besar lebih sulit dimengerti dan lebih sulit
lagi dalam melakukan pelacakan kesalahan
 Program sebaiknya dipecah menjadi beberapa subprogram
yang lebih kecil
 Subprogram yang baik adalah subprogram yang
independen dari program utama sehingga programnya
dapat dirancang tanpa mempertimbangkan konteks
dimana ia digunakan
 Teknik pemecahan program menjadi sejumlah subprogram
disebut teknik pemrograman modular
 Subprogram disebut juga dengan
subrutin, modul, prosedur atau fungsi
 Keuntungan pemrograman modular
• Menghindari penulisan teks program yang sama secara
berulangkali, sehingga dapat mengurangi panjang
program
• Kemudahan menulis dan menemukan kesalahan
program
 Terdapat dua bentuk subprogram, yaitu prosedur
(procedure) dan fungsi (function)
 Struktur subprogram adalah:
1. Bagian judul
2. Bagian deklarasi
3. Bagian badan program
Prosedur
 Prosedur adalah modul program yang mengerjakan tugas
yang spesifik dan menghasilkan suatu efek netto, dengan
membandingkan keadaan awal dan keadaan akhir pada
pelaksanaan sebuah prosedur
 Struktur prosedur sama dengan struktur algoritma biasa
 Setiap prosedur mempunyai nama yang unik
 Nama prosedur sebaiknya diawali dengan kata kerja karena
prosedur berisi suatu aktivitas
 Prosedur diakses dengan cara memanggil namanya dari
program pemanggil, misalnya program utama atau dari modul
program lainnya
 Jika prosedur tanpa parameter, maka pemanggilannya cukup
dengan namanya saja :
NamaProsedur
 Notasi algoritmik prosedur :
PROCEDURE NamaProsedur(deklarasi parameter jika ada)
{ Spesifikasi prosedur, berisi penjelasan tentang apa yang
dilakukan oleh prosedur ini.
K. Awal : keadaan sebelum prosedur dilaksanakan
K. Akhir : keadaan setelah prosedur dilaksanakan }
DEKLARASI
{ Semua nama yang dipakai didalam prosedur dan hanya berlaku
lokal didalam prosedur didefinisikan disini }
DESKRIPSI:
{ badan prosedur, berisi urutan instruksi }
Contoh Soal
 Kasus 1 :
Buatlah prosedur untuk menghitung luas segitiga dan program utama
untuk memanggil prosedur tersebut!
English Structure
Prosedur Luas Segitiga:
Input : -
Output : luas
Proses :
1. Menghitung luas = 0.5* (alas * tinggi)
2. Mencetak nilai luas
Program Utama:
Input : alas, tinggi
Output : -
Proses :
1. Membaca nilai alas yang dimasukkan oleh user
2. Membaca nilai tinggi yang dimasukkan oleh user
3. Memanggil prosedur untuk menghitung luas segitiga
Pseudocode untuk Prosedur :
PROCEDURE LuasSegitiga
{ Menghitung luas segitiga, luas = (alas x tinggi) / 2
K. Awal : sembarang
K. Akhir : luas segitiga tercetak }
DEKLARASI
luas : real
DESKRIPSI:
luas  0.5 * (alas * tinggi)
output(luas)
Pseudocode untuk Program Utama :
ALGORITMA Segitiga
{ Menghitung luas segitiga dengan prosedur }
DEKLARASI
alas, tinggi : real
procedure LuasSegitiga
{ Menghitung luas segitiga, luas = (alas x tinggi)/2 }
DESKRIPSI:
input(alas, tinggi)
LuasSegitiga
Nama Lokal & Global
 Nama lokal adalah nama-nama yang dideklarasikan
didalam prosedur dan hanya berlaku didalam prosedur itu
sendiri
 Nama global adalah nama-nama yang dideklarasikan
didalam program utama dan berlaku baik didalam
program utama maupun didalam prosedur yang dipanggil
 Pada contoh 1 diatas :
• Nama lokal : luas
• Nama global : alas, tinggi
 Pendeklarasian nama global dilakukan jika suatu peubah
digunakan di seluruh bagian program (termasuk didalam
prosedur)
 Pendeklarasian nama lokal dilakukan jika suatu peubah
hanya digunakan didalam prosedur saja
 Nama yang dideklarasikan di dalam prosedur dan di
dalam program utama mungkin sama, namun sifatnya
tidak berubah
 Usahakan menggunakan nama global sedikit mungkin
 Penggunaan nama lokal menguntungkan karena dapat
meminimumkan usaha pencarian kesalahan yang
diakibatkan oleh program tersebut
Parameter
 Parameter adalah nama-nama peubah yang dideklarasikan
pada bagian header prosedur
 Program memerlukan pertukaran informasi/data antara
prosedur dengan bagian yang memanggilnya
 Parameter aktual (argumen) adalah parameter yang disertakan
pada waktu pemanggilan prosedur
 Parameter formal adalah parameter yang dideklarasikan
didalam bagian header prosedur itu sendiri
 Ketika prosedur dipanggil, parameter aktual menggantikan
parameter formal
 Tiap-tiap parameter aktual berpasangan dengan parameter
formal yang bersesuaian
 Cara memanggil prosedur dengan parameter :
NamaProsedur (parameter aktual)
 Aturan yang harus diperhatikan dalam hubungan satu-satu
antara parameter aktual dan parameter formal adalah :
• Jumlah parameter aktual pada pemanggilan prosedur
harus sama dengan jumlah parameter formal pada
deklarasi prosedurnya
• Tiap parameter aktual harus bertipe sama dengan tipe
parameter formal yang bersesuaian
• Tiap parameter aktual harus diekspresikan dalam cara
yang taat-asas dengan parameter formal yang
bersesuaian, bergantung pada jenis parameter formal
 Terdapat tiga jenis parameter formal yaitu :
1. Parameter masukan (input parameter)
2. Parameter keluaran (output parameter)
3. Parameter masukan/keluaran (input/output parameter)
Parameter Masukan
 Parameter masukan adalah parameter yang nilainya berlaku
sebagai masukan untuk prosedur
 Parameter masukan disebut juga parameter nilai
 Nilai yang dinyatakan oleh parameter masukan tidak dapat
dikirim balik ke bagian yang memanggil
 Perubahan nilai parameter didalam badan prosedur tidak
mengubah nilai parameter aktual
 Parameter masukan dideklarasikan di dalam header prosedur
 Parameter masukan dinyatakan dengan kata kunci input
 Nama parameter aktual boleh tidak sama dengan nama
parameter formal yang bersesuaian
Contoh Soal
 Kasus 2 :
Buatlah prosedur untuk menghitung luas segitiga dengan parameter
masukan dan program utama untuk memanggil prosedur tersebut!
English Structure
Prosedur Luas Segitiga:
Input : alas, tinggi
Output : luas
Proses :
1. Menghitung luas = 0.5* (alas * tinggi)
2. Mencetak nilai luas
Program Utama:
Input : alas, tinggi
Output : -
Proses :
1. Membaca nilai alas yang dimasukkan oleh user
2. Membaca nilai tinggi yang dimasukkan oleh user
3. Memanggil prosedur untuk menghitung luas segitiga
Pseudocode untuk Prosedur :
PROCEDURE LuasSegitiga(input alas, tinggi : real)
{ Menghitung luas segitiga, luas = (alas x tinggi) / 2
K. Awal : sembarang
K. Akhir : luas segitiga tercetak }
DEKLARASI
luas : real
DESKRIPSI:
luas  0.5 * (alas * tinggi)
output(luas)
Pseudocode untuk Program Utama :
ALGORITMA Segitiga
{ Menghitung luas segitiga dengan prosedur berparameter}
DEKLARASI
alas, tinggi : real
procedure LuasSegitiga(input alas, tinggi : real)
{ Menghitung luas segitiga, luas = (alas x tinggi)/2 }
DESKRIPSI:
input(alas, tinggi)
LuasSegitiga(alas, tinggi)
Contoh Soal
 Kasus 3 :
Buatlah prosedur untuk menghitung luas segitiga dengan parameter
aktual dan parameter formal tidak sama!
English Structure
Prosedur Luas Segitiga:
Input : a, t
Output : luas
Proses :
1. Menghitung luas = 0.5* (a * t)
2. Mencetak nilai luas
Program Utama:
Input : alas, tinggi
Output : -
Proses :
1. Membaca nilai alas yang dimasukkan oleh user
2. Membaca nilai tinggi yang dimasukkan oleh user
3. Memanggil prosedur untuk menghitung luas segitiga
Pseudocode untuk Prosedur :
PROCEDURE LuasSegitiga(input a, t : real)
{ Menghitung luas segitiga, luas = (alas x tinggi) / 2
K. Awal : sembarang
K. Akhir : luas segitiga tercetak }
DEKLARASI
luas : real
DESKRIPSI:
luas  0.5 * (a * t)
output(luas)
Pseudocode untuk Program Utama :
ALGORITMA Segitiga
{ Menghitung luas segitiga dengan prosedur berparameter}
DEKLARASI
alas, tinggi : real
procedure LuasSegitiga(input a, t : real)
{ Menghitung luas segitiga, luas = (alas x tinggi)/2 }
DESKRIPSI:
input(alas, tinggi)
LuasSegitiga(alas, tinggi)
Parameter Keluaran
 Parameter keluaran adalah paramater yang menampung
keluaran yang dihasilkan oleh prosedur
 Parameter keluaran disebut juga parameter acuan
 Nilai dari parameter aktual akan tetap berada di parameter
aktual meskipun prosedur telah selesai dilaksanakan
 Parameter keluaran dideklarasikan di dalam header
prosedur
 Parameter keluaran dinyatakan dengan kata kunci output
Contoh Soal
 Kasus 4 :
Buatlah prosedur untuk menghitung luas segitiga dengan parameter
masukan dan parameter keluaran!
English Structure
Prosedur Luas Segitiga:
Input : a, t
Output : l
Proses :
1. Menghitung l= 0.5* (a * t)
Program Utama:
Input : alas, tinggi
Output : luas
Proses :
1. Membaca nilai alas yang dimasukkan oleh user
2. Membaca nilai tinggi yang dimasukkan oleh user
3. Memanggil prosedur untuk menghitung luas segitiga
4. Mencetak nilai luas
Pseudocode untuk Prosedur :
PROCEDURE LuasSegitiga(input a, t : real, output l : real)
{ Menghitung luas segitiga, luas = (alas x tinggi) / 2
K. Awal : sembarang
K. Akhir : luas segitiga tercetak }
DEKLARASI
(tidak ada)
DESKRIPSI:
l  0.5 * (a * t)
Pseudocode untuk Program Utama :
ALGORITMA Segitiga
{ Menghitung luas segitiga dengan prosedur berparameter}
DEKLARASI
alas, tinggi, luas : real
procedure LuasSegitiga(input a, t : real, output l : real)
{ Menghitung luas segitiga, luas = (alas x tinggi)/2 }
DESKRIPSI:
input(alas, tinggi)
LuasSegitiga(alas, tinggi, luas)
output(luas)
Parameter Masukan/Keluaran
 Parameter masukan/keluaran adalah paramater yang
berfungsi sebagai masukan sekaligus keluaran bagi prosedur
tersebut
 Parameter masukan/keluaran disebut juga parameter acuan
 Jika parameter aktual nilainya diubah dalam badan
prosedur, maka sesudah pemanggilan prosedur nilai
parameter aktual di titik pemanggilan juga berubah
 Parameter aktual harus berupa peubah, tidak boleh berupa
konstanta atau ekspresi
 Parameter masukan/keluaran dideklarasikan di dalam header
prosedur
 Parameter keluaran dinyatakan dengan kata kunci
input/output
Contoh Soal
 Kasus 5 :
Buatlah program untuk mencetak angka 1 sampai 10, dengan prosedur
menaikkan angka sebanyak 1 angka!
English Structure
Prosedur Increment:
Input : x
Output : x
Proses :
1. Menjumlahkan x = x + 1
Program Utama:
Input : -
Output : x
Proses :
1. Mengisi variabel x dengan nilai awal = 1
2. Ulangi
a. Mencetak angka x
b. Memanggil prosedur increment
Sampai x > 10
Pseudocode untuk Prosedur :
PROCEDURE Increment(input/output x : integer)
{ Menaikkan nilai x sebesar 1
K. Awal : x sudah terdefinisi nilainya
K. Akhir : nilai x bertambah 1 }
DEKLARASI
{ tidak ada }
DESKRIPSI:
x  x + 1
Pseudocode untuk Program Utama :
ALGORITMA CetakAngka
{ Mencetak angka dari 1 sampai 10 }
DEKLARASI
x : integer
procedure Increment(input/output x : integer)
{ Menaikkan nilai x sebesar 1 }
DESKRIPSI:
x  1
repeat
output(x)
Increment(x)
until x > 10
Rangkuman
 Teknik pemrograman yang baik : memecah program menjadi
beberapa prosedur
 Prosedur sebaiknya ditulis dengan parameter untuk mengurangi
kebutuhan penggunaan nama global
 Bila prosedur menghasilkan keluaran yang digunakan oleh
program pemanggil, gunakan parameter keluaran
 Bila prosedur tidak menghasilkan keluaran atau keluaran hanya
digunakan oleh prosedur itu sendiri, gunakan parameter masukan
 Bila prosedur menerima masukan sekaligus keluaran pada
parameter yang sama , gunakan parameter masukan/keluaran
Latihan Soal
 Kasus 1:
Buatlah algoritma program utama dengan prosedur untuk
menghitung luas persegipanjang!
 Kasus 2:
Buatlah algoritma program utama dengan prosedur untuk
menghitung rata-rata sehingga dapat menampilkan hasil
perhitungan berikut!
Misalkan, user memasukkan angka = 5, maka proses
yang dilakukan adalah :
rata-rata = (1 + 2 + 3 + 4 + 5)/5 = 15/5 = 3
REFERENSI
1. Budi Sutedjo, Michael A.N. 2000. “Algoritma dan Teknik
Pemrograman”. Yogyakarta: ANDI OFFSET.
2. Fathul Wahid. 2004. “Dasar-Dasar Algoritma dan
Pemrograman”. Yogyakarta: ANDI OFFSET.
3. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma &
Pemrograman Dalam Bahasa Pascal dan C Buku 1”.
Bandung: Informatika.
4. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma &
Pemrograman Dalam Bahasa Pascal dan C Buku 2”.
Bandung: Informatika.

More Related Content

What's hot

Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05KuliahKita
 
Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunanFajar Istiqomah
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritriyana fairuz kholisa
 
Algoritma dan Struktur Data - Abstract Data Type
Algoritma dan Struktur Data - Abstract Data TypeAlgoritma dan Struktur Data - Abstract Data Type
Algoritma dan Struktur Data - Abstract Data TypeKuliahKita
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeAcomic Comic
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanCliquerz Javaneze
 
Teori bahasa otomata pertemuan 6
Teori bahasa otomata pertemuan 6Teori bahasa otomata pertemuan 6
Teori bahasa otomata pertemuan 6nhiyabelle
 
Deret Fourier Waktu Kontinyu
Deret Fourier Waktu KontinyuDeret Fourier Waktu Kontinyu
Deret Fourier Waktu Kontinyuyusufbf
 
Sistem Persamaan Linear (SPL) Aljabar Linear Elementer
Sistem Persamaan Linear (SPL) Aljabar Linear ElementerSistem Persamaan Linear (SPL) Aljabar Linear Elementer
Sistem Persamaan Linear (SPL) Aljabar Linear ElementerKelinci Coklat
 
Jaringan Syaraf Tiruan (JST)
Jaringan Syaraf Tiruan (JST)Jaringan Syaraf Tiruan (JST)
Jaringan Syaraf Tiruan (JST)Farichah Riha
 
Analisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik KompilasiAnalisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik Kompilasiahmad haidaroh
 
Pertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logikaPertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logikaBuhori Muslim
 
Teori bahasa-dan-otomata
Teori bahasa-dan-otomataTeori bahasa-dan-otomata
Teori bahasa-dan-otomataBanta Cut
 
Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapCheria Asyifa
 

What's hot (20)

Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05
 
Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunan
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskrit
 
SLIDE KE:5 NFA
SLIDE KE:5 NFASLIDE KE:5 NFA
SLIDE KE:5 NFA
 
2 alfabet dan string
2 alfabet dan string2 alfabet dan string
2 alfabet dan string
 
Algoritma dan Struktur Data - Abstract Data Type
Algoritma dan Struktur Data - Abstract Data TypeAlgoritma dan Struktur Data - Abstract Data Type
Algoritma dan Struktur Data - Abstract Data Type
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression tree
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi boolean
 
Teori bahasa otomata pertemuan 6
Teori bahasa otomata pertemuan 6Teori bahasa otomata pertemuan 6
Teori bahasa otomata pertemuan 6
 
Deret Fourier Waktu Kontinyu
Deret Fourier Waktu KontinyuDeret Fourier Waktu Kontinyu
Deret Fourier Waktu Kontinyu
 
Soal uas struktur data
Soal uas struktur dataSoal uas struktur data
Soal uas struktur data
 
Algoritma flowchart
Algoritma flowchartAlgoritma flowchart
Algoritma flowchart
 
Sistem Persamaan Linear (SPL) Aljabar Linear Elementer
Sistem Persamaan Linear (SPL) Aljabar Linear ElementerSistem Persamaan Linear (SPL) Aljabar Linear Elementer
Sistem Persamaan Linear (SPL) Aljabar Linear Elementer
 
Jaringan Syaraf Tiruan (JST)
Jaringan Syaraf Tiruan (JST)Jaringan Syaraf Tiruan (JST)
Jaringan Syaraf Tiruan (JST)
 
Analisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik KompilasiAnalisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik Kompilasi
 
Pertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logikaPertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logika
 
Tipe data abstract
Tipe data abstractTipe data abstract
Tipe data abstract
 
Teori bahasa-dan-otomata
Teori bahasa-dan-otomataTeori bahasa-dan-otomata
Teori bahasa-dan-otomata
 
Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh Map
 
Bahasa Regular - P3
Bahasa Regular - P3Bahasa Regular - P3
Bahasa Regular - P3
 

Similar to Topik 9 Prosedur

Konsep pemrograman prosedur dalam pascal
Konsep pemrograman prosedur dalam pascalKonsep pemrograman prosedur dalam pascal
Konsep pemrograman prosedur dalam pascalSimon Patabang
 
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus StatistikaLaporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus StatistikaShofura Kamal
 
Algoritma Procedure
Algoritma ProcedureAlgoritma Procedure
Algoritma Procedurebrigidaarie
 
Penggunaan prosedur dan fungsi pada pemrograman c++
Penggunaan prosedur dan fungsi pada pemrograman c++Penggunaan prosedur dan fungsi pada pemrograman c++
Penggunaan prosedur dan fungsi pada pemrograman c++MunawirMunawir15
 
Materi : Chapter 1 Pemrograman Lanjut.pdf
Materi : Chapter 1 Pemrograman Lanjut.pdfMateri : Chapter 1 Pemrograman Lanjut.pdf
Materi : Chapter 1 Pemrograman Lanjut.pdfFujiAdam
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahBraga Rezpect
 
Intruksi Fundamental
Intruksi FundamentalIntruksi Fundamental
Intruksi FundamentalAkmal Fajar
 
Algoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptxAlgoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptxrince10
 
2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptx
2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptx2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptx
2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptxslametafandi3
 
Algoritma Pemrograman - Pseudocode & Flowchart
Algoritma Pemrograman - Pseudocode & FlowchartAlgoritma Pemrograman - Pseudocode & Flowchart
Algoritma Pemrograman - Pseudocode & FlowchartDwi Putra Asana
 
Procedure dalam pascal
Procedure dalam pascalProcedure dalam pascal
Procedure dalam pascalElviraHafis2
 
ALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANBang Jo
 
Modularisasi – function dalam c++
Modularisasi – function dalam c++Modularisasi – function dalam c++
Modularisasi – function dalam c++Akmal Fajar
 

Similar to Topik 9 Prosedur (20)

Konsep pemrograman prosedur dalam pascal
Konsep pemrograman prosedur dalam pascalKonsep pemrograman prosedur dalam pascal
Konsep pemrograman prosedur dalam pascal
 
Procedure dalam pemrograman
Procedure dalam pemrograman Procedure dalam pemrograman
Procedure dalam pemrograman
 
Topik 10 Fungsi
Topik 10 FungsiTopik 10 Fungsi
Topik 10 Fungsi
 
5 prosedur dan fungsi
5 prosedur dan fungsi5 prosedur dan fungsi
5 prosedur dan fungsi
 
sp243-061043-959-1.ppt
sp243-061043-959-1.pptsp243-061043-959-1.ppt
sp243-061043-959-1.ppt
 
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus StatistikaLaporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
 
Algoritma Procedure
Algoritma ProcedureAlgoritma Procedure
Algoritma Procedure
 
Algoritma pemrograman 13
Algoritma pemrograman 13Algoritma pemrograman 13
Algoritma pemrograman 13
 
Penggunaan prosedur dan fungsi pada pemrograman c++
Penggunaan prosedur dan fungsi pada pemrograman c++Penggunaan prosedur dan fungsi pada pemrograman c++
Penggunaan prosedur dan fungsi pada pemrograman c++
 
Materi : Chapter 1 Pemrograman Lanjut.pdf
Materi : Chapter 1 Pemrograman Lanjut.pdfMateri : Chapter 1 Pemrograman Lanjut.pdf
Materi : Chapter 1 Pemrograman Lanjut.pdf
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Pseudo code
Pseudo codePseudo code
Pseudo code
 
Intruksi Fundamental
Intruksi FundamentalIntruksi Fundamental
Intruksi Fundamental
 
Algoritma Pemrogaman
Algoritma PemrogamanAlgoritma Pemrogaman
Algoritma Pemrogaman
 
Algoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptxAlgoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptx
 
2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptx
2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptx2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptx
2- ALGORITMA, FLOWCHART, TIPE DATA, OPERATOR.pptx
 
Algoritma Pemrograman - Pseudocode & Flowchart
Algoritma Pemrograman - Pseudocode & FlowchartAlgoritma Pemrograman - Pseudocode & Flowchart
Algoritma Pemrograman - Pseudocode & Flowchart
 
Procedure dalam pascal
Procedure dalam pascalProcedure dalam pascal
Procedure dalam pascal
 
ALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMAN
 
Modularisasi – function dalam c++
Modularisasi – function dalam c++Modularisasi – function dalam c++
Modularisasi – function dalam c++
 

More from I Komang Agustino (20)

Topik 14 Tugas
Topik 14 TugasTopik 14 Tugas
Topik 14 Tugas
 
Topik 12 Pointer
Topik 12 PointerTopik 12 Pointer
Topik 12 Pointer
 
Topik 11 Array
Topik 11 ArrayTopik 11 Array
Topik 11 Array
 
Topik 8 Perulangan
Topik 8 PerulanganTopik 8 Perulangan
Topik 8 Perulangan
 
Topik 7 Pemilihan
Topik 7 PemilihanTopik 7 Pemilihan
Topik 7 Pemilihan
 
Topik 6 Runtunan (Sequence)
Topik 6 Runtunan (Sequence)Topik 6 Runtunan (Sequence)
Topik 6 Runtunan (Sequence)
 
Topik 5 Ekspresi dan Iinput Output
Topik 5 Ekspresi dan Iinput OutputTopik 5 Ekspresi dan Iinput Output
Topik 5 Ekspresi dan Iinput Output
 
Topik 4 Tipe Data
Topik 4 Tipe DataTopik 4 Tipe Data
Topik 4 Tipe Data
 
Topik 3 Struktur Algoritma
Topik 3 Struktur AlgoritmaTopik 3 Struktur Algoritma
Topik 3 Struktur Algoritma
 
Topik 2 Konsep Dasar Algoritma
Topik 2 Konsep Dasar AlgoritmaTopik 2 Konsep Dasar Algoritma
Topik 2 Konsep Dasar Algoritma
 
Topik 1 Pendahuluan
Topik 1 PendahuluanTopik 1 Pendahuluan
Topik 1 Pendahuluan
 
Topik 15 Tugas
Topik 15 TugasTopik 15 Tugas
Topik 15 Tugas
 
Topik 13 Rekaman
Topik 13 RekamanTopik 13 Rekaman
Topik 13 Rekaman
 
Topik 11 Pengenalan Konsep
Topik 11 Pengenalan KonsepTopik 11 Pengenalan Konsep
Topik 11 Pengenalan Konsep
 
Topik 10 E-Commerce
Topik 10 E-CommerceTopik 10 E-Commerce
Topik 10 E-Commerce
 
Topik 9 Keamanan TI
Topik 9 Keamanan TITopik 9 Keamanan TI
Topik 9 Keamanan TI
 
Topik 8 Sertifikasi TI
Topik 8 Sertifikasi TITopik 8 Sertifikasi TI
Topik 8 Sertifikasi TI
 
Topik 7 Jaringan Telekomunikasi
Topik 7 Jaringan TelekomunikasiTopik 7 Jaringan Telekomunikasi
Topik 7 Jaringan Telekomunikasi
 
Topik 6 Komunikasi Data
Topik 6 Komunikasi DataTopik 6 Komunikasi Data
Topik 6 Komunikasi Data
 
Topik 5 Storage dan Memory
Topik 5 Storage dan MemoryTopik 5 Storage dan Memory
Topik 5 Storage dan Memory
 

Recently uploaded

bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikaAtiAnggiSupriyati
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptnabilafarahdiba95
 
Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...
Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...
Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...MuhammadSyamsuryadiS
 
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfAksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfEniNuraeni29
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatanssuser963292
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...Kanaidi ken
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxdpp11tya
 
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...Kanaidi ken
 
Pendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptx
Pendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptxPendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptx
Pendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptxdeskaputriani1
 
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024editwebsitesubdit
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfCandraMegawati
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7IwanSumantri7
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxsukmakarim1998
 
PPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxPPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxDEAAYUANGGREANI
 
Lingkungan bawah airLingkungan bawah air.ppt
Lingkungan bawah airLingkungan bawah air.pptLingkungan bawah airLingkungan bawah air.ppt
Lingkungan bawah airLingkungan bawah air.pptimamshadiqin2
 
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAKELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAppgauliananda03
 
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...pipinafindraputri1
 
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxMODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxSlasiWidasmara1
 
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdfKanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdfAkhyar33
 
Stoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.pptStoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.pptannanurkhasanah2
 

Recently uploaded (20)

bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
 
Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...
Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...
Membaca dengan Metode Fonik - Membuat Rancangan Pembelajaran dengan Metode Fo...
 
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfAksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
 
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
 
Pendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptx
Pendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptxPendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptx
Pendidikan-Bahasa-Indonesia-di-SD MODUL 3 .pptx
 
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
 
PPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxPPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptx
 
Lingkungan bawah airLingkungan bawah air.ppt
Lingkungan bawah airLingkungan bawah air.pptLingkungan bawah airLingkungan bawah air.ppt
Lingkungan bawah airLingkungan bawah air.ppt
 
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAKELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
 
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
 
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxMODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
 
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdfKanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
 
Stoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.pptStoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.ppt
 

Topik 9 Prosedur

  • 1. Topik 9 Prosedur Algoritma & Struktur Data PS. Manajemen Informatika
  • 2. Sub Topik 1. Konsep Pemrograman Modular 2. Prosedur 3. Nama Lokal & Global 4. Parameter 5. Parameter Masukan 6. Parameter Keluaran 7. Parameter Masukan/Keluaran
  • 3. Tujuan Tujuan Instruksional Umum : Mahasiswa diharapkan mampu membuat algoritma dengan prosedur Tujuan Instruksional Khusus :  Mahasiswa mampu memahami konsep pemrograman modular  Mahasiswa mampu memahami penggunaan nama lokal & global  Mahasiswa mampu memahami penggunaan parameter  Mahasiswa mampu membuat algoritma dengan prosedur
  • 4. Konsep Pemrograman Modular  Program yang besar lebih sulit dimengerti dan lebih sulit lagi dalam melakukan pelacakan kesalahan  Program sebaiknya dipecah menjadi beberapa subprogram yang lebih kecil  Subprogram yang baik adalah subprogram yang independen dari program utama sehingga programnya dapat dirancang tanpa mempertimbangkan konteks dimana ia digunakan  Teknik pemecahan program menjadi sejumlah subprogram disebut teknik pemrograman modular
  • 5.  Subprogram disebut juga dengan subrutin, modul, prosedur atau fungsi  Keuntungan pemrograman modular • Menghindari penulisan teks program yang sama secara berulangkali, sehingga dapat mengurangi panjang program • Kemudahan menulis dan menemukan kesalahan program  Terdapat dua bentuk subprogram, yaitu prosedur (procedure) dan fungsi (function)  Struktur subprogram adalah: 1. Bagian judul 2. Bagian deklarasi 3. Bagian badan program
  • 6. Prosedur  Prosedur adalah modul program yang mengerjakan tugas yang spesifik dan menghasilkan suatu efek netto, dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur  Struktur prosedur sama dengan struktur algoritma biasa  Setiap prosedur mempunyai nama yang unik  Nama prosedur sebaiknya diawali dengan kata kerja karena prosedur berisi suatu aktivitas  Prosedur diakses dengan cara memanggil namanya dari program pemanggil, misalnya program utama atau dari modul program lainnya  Jika prosedur tanpa parameter, maka pemanggilannya cukup dengan namanya saja : NamaProsedur
  • 7.  Notasi algoritmik prosedur : PROCEDURE NamaProsedur(deklarasi parameter jika ada) { Spesifikasi prosedur, berisi penjelasan tentang apa yang dilakukan oleh prosedur ini. K. Awal : keadaan sebelum prosedur dilaksanakan K. Akhir : keadaan setelah prosedur dilaksanakan } DEKLARASI { Semua nama yang dipakai didalam prosedur dan hanya berlaku lokal didalam prosedur didefinisikan disini } DESKRIPSI: { badan prosedur, berisi urutan instruksi }
  • 8. Contoh Soal  Kasus 1 : Buatlah prosedur untuk menghitung luas segitiga dan program utama untuk memanggil prosedur tersebut! English Structure Prosedur Luas Segitiga: Input : - Output : luas Proses : 1. Menghitung luas = 0.5* (alas * tinggi) 2. Mencetak nilai luas Program Utama: Input : alas, tinggi Output : - Proses : 1. Membaca nilai alas yang dimasukkan oleh user 2. Membaca nilai tinggi yang dimasukkan oleh user 3. Memanggil prosedur untuk menghitung luas segitiga
  • 9. Pseudocode untuk Prosedur : PROCEDURE LuasSegitiga { Menghitung luas segitiga, luas = (alas x tinggi) / 2 K. Awal : sembarang K. Akhir : luas segitiga tercetak } DEKLARASI luas : real DESKRIPSI: luas  0.5 * (alas * tinggi) output(luas)
  • 10. Pseudocode untuk Program Utama : ALGORITMA Segitiga { Menghitung luas segitiga dengan prosedur } DEKLARASI alas, tinggi : real procedure LuasSegitiga { Menghitung luas segitiga, luas = (alas x tinggi)/2 } DESKRIPSI: input(alas, tinggi) LuasSegitiga
  • 11. Nama Lokal & Global  Nama lokal adalah nama-nama yang dideklarasikan didalam prosedur dan hanya berlaku didalam prosedur itu sendiri  Nama global adalah nama-nama yang dideklarasikan didalam program utama dan berlaku baik didalam program utama maupun didalam prosedur yang dipanggil  Pada contoh 1 diatas : • Nama lokal : luas • Nama global : alas, tinggi  Pendeklarasian nama global dilakukan jika suatu peubah digunakan di seluruh bagian program (termasuk didalam prosedur)
  • 12.  Pendeklarasian nama lokal dilakukan jika suatu peubah hanya digunakan didalam prosedur saja  Nama yang dideklarasikan di dalam prosedur dan di dalam program utama mungkin sama, namun sifatnya tidak berubah  Usahakan menggunakan nama global sedikit mungkin  Penggunaan nama lokal menguntungkan karena dapat meminimumkan usaha pencarian kesalahan yang diakibatkan oleh program tersebut
  • 13. Parameter  Parameter adalah nama-nama peubah yang dideklarasikan pada bagian header prosedur  Program memerlukan pertukaran informasi/data antara prosedur dengan bagian yang memanggilnya  Parameter aktual (argumen) adalah parameter yang disertakan pada waktu pemanggilan prosedur  Parameter formal adalah parameter yang dideklarasikan didalam bagian header prosedur itu sendiri  Ketika prosedur dipanggil, parameter aktual menggantikan parameter formal  Tiap-tiap parameter aktual berpasangan dengan parameter formal yang bersesuaian
  • 14.  Cara memanggil prosedur dengan parameter : NamaProsedur (parameter aktual)  Aturan yang harus diperhatikan dalam hubungan satu-satu antara parameter aktual dan parameter formal adalah : • Jumlah parameter aktual pada pemanggilan prosedur harus sama dengan jumlah parameter formal pada deklarasi prosedurnya • Tiap parameter aktual harus bertipe sama dengan tipe parameter formal yang bersesuaian • Tiap parameter aktual harus diekspresikan dalam cara yang taat-asas dengan parameter formal yang bersesuaian, bergantung pada jenis parameter formal  Terdapat tiga jenis parameter formal yaitu : 1. Parameter masukan (input parameter) 2. Parameter keluaran (output parameter) 3. Parameter masukan/keluaran (input/output parameter)
  • 15. Parameter Masukan  Parameter masukan adalah parameter yang nilainya berlaku sebagai masukan untuk prosedur  Parameter masukan disebut juga parameter nilai  Nilai yang dinyatakan oleh parameter masukan tidak dapat dikirim balik ke bagian yang memanggil  Perubahan nilai parameter didalam badan prosedur tidak mengubah nilai parameter aktual  Parameter masukan dideklarasikan di dalam header prosedur  Parameter masukan dinyatakan dengan kata kunci input  Nama parameter aktual boleh tidak sama dengan nama parameter formal yang bersesuaian
  • 16. Contoh Soal  Kasus 2 : Buatlah prosedur untuk menghitung luas segitiga dengan parameter masukan dan program utama untuk memanggil prosedur tersebut! English Structure Prosedur Luas Segitiga: Input : alas, tinggi Output : luas Proses : 1. Menghitung luas = 0.5* (alas * tinggi) 2. Mencetak nilai luas Program Utama: Input : alas, tinggi Output : - Proses : 1. Membaca nilai alas yang dimasukkan oleh user 2. Membaca nilai tinggi yang dimasukkan oleh user 3. Memanggil prosedur untuk menghitung luas segitiga
  • 17. Pseudocode untuk Prosedur : PROCEDURE LuasSegitiga(input alas, tinggi : real) { Menghitung luas segitiga, luas = (alas x tinggi) / 2 K. Awal : sembarang K. Akhir : luas segitiga tercetak } DEKLARASI luas : real DESKRIPSI: luas  0.5 * (alas * tinggi) output(luas)
  • 18. Pseudocode untuk Program Utama : ALGORITMA Segitiga { Menghitung luas segitiga dengan prosedur berparameter} DEKLARASI alas, tinggi : real procedure LuasSegitiga(input alas, tinggi : real) { Menghitung luas segitiga, luas = (alas x tinggi)/2 } DESKRIPSI: input(alas, tinggi) LuasSegitiga(alas, tinggi)
  • 19. Contoh Soal  Kasus 3 : Buatlah prosedur untuk menghitung luas segitiga dengan parameter aktual dan parameter formal tidak sama! English Structure Prosedur Luas Segitiga: Input : a, t Output : luas Proses : 1. Menghitung luas = 0.5* (a * t) 2. Mencetak nilai luas Program Utama: Input : alas, tinggi Output : - Proses : 1. Membaca nilai alas yang dimasukkan oleh user 2. Membaca nilai tinggi yang dimasukkan oleh user 3. Memanggil prosedur untuk menghitung luas segitiga
  • 20. Pseudocode untuk Prosedur : PROCEDURE LuasSegitiga(input a, t : real) { Menghitung luas segitiga, luas = (alas x tinggi) / 2 K. Awal : sembarang K. Akhir : luas segitiga tercetak } DEKLARASI luas : real DESKRIPSI: luas  0.5 * (a * t) output(luas)
  • 21. Pseudocode untuk Program Utama : ALGORITMA Segitiga { Menghitung luas segitiga dengan prosedur berparameter} DEKLARASI alas, tinggi : real procedure LuasSegitiga(input a, t : real) { Menghitung luas segitiga, luas = (alas x tinggi)/2 } DESKRIPSI: input(alas, tinggi) LuasSegitiga(alas, tinggi)
  • 22. Parameter Keluaran  Parameter keluaran adalah paramater yang menampung keluaran yang dihasilkan oleh prosedur  Parameter keluaran disebut juga parameter acuan  Nilai dari parameter aktual akan tetap berada di parameter aktual meskipun prosedur telah selesai dilaksanakan  Parameter keluaran dideklarasikan di dalam header prosedur  Parameter keluaran dinyatakan dengan kata kunci output
  • 23. Contoh Soal  Kasus 4 : Buatlah prosedur untuk menghitung luas segitiga dengan parameter masukan dan parameter keluaran! English Structure Prosedur Luas Segitiga: Input : a, t Output : l Proses : 1. Menghitung l= 0.5* (a * t) Program Utama: Input : alas, tinggi Output : luas Proses : 1. Membaca nilai alas yang dimasukkan oleh user 2. Membaca nilai tinggi yang dimasukkan oleh user 3. Memanggil prosedur untuk menghitung luas segitiga 4. Mencetak nilai luas
  • 24. Pseudocode untuk Prosedur : PROCEDURE LuasSegitiga(input a, t : real, output l : real) { Menghitung luas segitiga, luas = (alas x tinggi) / 2 K. Awal : sembarang K. Akhir : luas segitiga tercetak } DEKLARASI (tidak ada) DESKRIPSI: l  0.5 * (a * t)
  • 25. Pseudocode untuk Program Utama : ALGORITMA Segitiga { Menghitung luas segitiga dengan prosedur berparameter} DEKLARASI alas, tinggi, luas : real procedure LuasSegitiga(input a, t : real, output l : real) { Menghitung luas segitiga, luas = (alas x tinggi)/2 } DESKRIPSI: input(alas, tinggi) LuasSegitiga(alas, tinggi, luas) output(luas)
  • 26. Parameter Masukan/Keluaran  Parameter masukan/keluaran adalah paramater yang berfungsi sebagai masukan sekaligus keluaran bagi prosedur tersebut  Parameter masukan/keluaran disebut juga parameter acuan  Jika parameter aktual nilainya diubah dalam badan prosedur, maka sesudah pemanggilan prosedur nilai parameter aktual di titik pemanggilan juga berubah  Parameter aktual harus berupa peubah, tidak boleh berupa konstanta atau ekspresi  Parameter masukan/keluaran dideklarasikan di dalam header prosedur  Parameter keluaran dinyatakan dengan kata kunci input/output
  • 27. Contoh Soal  Kasus 5 : Buatlah program untuk mencetak angka 1 sampai 10, dengan prosedur menaikkan angka sebanyak 1 angka! English Structure Prosedur Increment: Input : x Output : x Proses : 1. Menjumlahkan x = x + 1 Program Utama: Input : - Output : x Proses : 1. Mengisi variabel x dengan nilai awal = 1 2. Ulangi a. Mencetak angka x b. Memanggil prosedur increment Sampai x > 10
  • 28. Pseudocode untuk Prosedur : PROCEDURE Increment(input/output x : integer) { Menaikkan nilai x sebesar 1 K. Awal : x sudah terdefinisi nilainya K. Akhir : nilai x bertambah 1 } DEKLARASI { tidak ada } DESKRIPSI: x  x + 1
  • 29. Pseudocode untuk Program Utama : ALGORITMA CetakAngka { Mencetak angka dari 1 sampai 10 } DEKLARASI x : integer procedure Increment(input/output x : integer) { Menaikkan nilai x sebesar 1 } DESKRIPSI: x  1 repeat output(x) Increment(x) until x > 10
  • 30. Rangkuman  Teknik pemrograman yang baik : memecah program menjadi beberapa prosedur  Prosedur sebaiknya ditulis dengan parameter untuk mengurangi kebutuhan penggunaan nama global  Bila prosedur menghasilkan keluaran yang digunakan oleh program pemanggil, gunakan parameter keluaran  Bila prosedur tidak menghasilkan keluaran atau keluaran hanya digunakan oleh prosedur itu sendiri, gunakan parameter masukan  Bila prosedur menerima masukan sekaligus keluaran pada parameter yang sama , gunakan parameter masukan/keluaran
  • 31. Latihan Soal  Kasus 1: Buatlah algoritma program utama dengan prosedur untuk menghitung luas persegipanjang!  Kasus 2: Buatlah algoritma program utama dengan prosedur untuk menghitung rata-rata sehingga dapat menampilkan hasil perhitungan berikut! Misalkan, user memasukkan angka = 5, maka proses yang dilakukan adalah : rata-rata = (1 + 2 + 3 + 4 + 5)/5 = 15/5 = 3
  • 32. REFERENSI 1. Budi Sutedjo, Michael A.N. 2000. “Algoritma dan Teknik Pemrograman”. Yogyakarta: ANDI OFFSET. 2. Fathul Wahid. 2004. “Dasar-Dasar Algoritma dan Pemrograman”. Yogyakarta: ANDI OFFSET. 3. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma & Pemrograman Dalam Bahasa Pascal dan C Buku 1”. Bandung: Informatika. 4. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma & Pemrograman Dalam Bahasa Pascal dan C Buku 2”. Bandung: Informatika.