Anda di halaman 1dari 16

Perguruan Tinggi Raharja

Pemrograman Terstruktur
Pertemuan I
Muchamad Gozali

PEMROGRAMAN TERSTRUKTUR Sejarah Metodologi Pemrograman Metodologi pengembangan program pertama kali diperkenalkan Prof E.W Dykstra tahun 1960. Pemrograman terstruktur mengurangi pemakaian instruksi G ! Disebut "uga G ! less programming

Mengapa Pemrograman Terstruktur ? #risis metode pengembangan #emampuan tenaga programmer tertinggal $ulitnya modifikasi program "ika ada kesalahan atau perubahan $ulitnya modifikasi kode program karena tidak terstruktur dengan baik

Man aat Pemrograman Terstruktur Dapat menangani program yang besar dan komplek Dapat menghindari konflik internal team Membagi ker"a team berdasarkan modul%modul program yang sudah diran&ang kema"uan penger"aan sistem dapat dimonitor dan dika"i

!iri " #iri Program Terstruktur $Good Program%


'un &orre&tly $program handal% 'un effi&iently $program menjadi sederhana & tidak rumit% (e easy to read and understand $mudah di'a#a dan ditelusuri% (e easy to debug $program mudah ditelusuri kesalahann(a% (e easy to modify $program mudah dimodi ikasi%

)angkah " )angkah Pengem'angan Program

1. Definisikan masalah )(atasan masalah* +. 'an&ang outline peme&ahan masalah )Pengembangan model* ,. (uat algoritma berdasarkan outline peme&ahan masalah -. !est algoritma )Perbaikan algoritma* .. /oding )Pemrograman dan pengu"ian program* 6. E0e&ute )'unning* 1. Dokumentasi dan pemeliharaan

*+ ,e inisi Masalah #eluaran )Output* Masukan )Input* Proses )Proces*

!ontoh ta'el de inisi masalah2nput Pro&es utput

.+ Outline Peme#ahan Masalah


)Pengembangan model*

(uat langkah 3 langkah proses )modul4proses apa sa"a yang


ter"adi pada menu utama dan sub menu*

(uat rin&ian4detail Proses )masing%masing submenu akan


menger"akan berapa modul4proses5 setiap modul4proses yang ter"adi berinteraksi dengan berapa file dan file apa sa"a *

!entukan 6ariable dan re&ord )dalam setiap proses )modul*5


baik 7ariabel lokal maupun 7ariabel global*

!entukan struktur kontrol )urut5 pengulangan5 kondisi*5 berapa bentuk struktur kontrol yang terlibat dalam satu
proses5 dan "enis strukturnya apa sa"a dan berapa banyak

Metode Pemrograman Terstruktur

Pemrograman terstruktur memakai metode pengembangan Top-Down. Peran&angan program dilakukan se&ara Modular. Pengem'angan Top/,o0n Pengembangan yang dimulai dari langkah yang global lebih dahulu5 yang kemudian diperluas lagi sehingga didapat langkah rin&i Modular Peran&angan program dilakukan dalam bentuk modul% modul

Teorema Pada Pemrograman Terstruktur


9

1. Sequence !iap instruksi diker"akan se&ara berurutan sesuai dengan urutan penulisannya

Contoh 8 Perintah A Perintah B Perintah C

10

2. Selection 2nstruksi akan diker"akan "ika kondisi tertentu dipenuhi

Contoh : Penggunaan IF-THEN-ELSE Penggunaas CASE

3. Repetition 2nstruksi diker"akan berulang 3 ulang sampai suatu kondisi di&apai.


11

Contoh : Penggunaan DO WHILE Penggunaan EPEAT ! "NTIL

Modular Programming Mem'uat Modul Membuat Modul fungsi. dalam bahasa /99 adalah dengan

12

:ungsi ada + ma&am 8 1. +. :ungsi yang tidak bernilai :ungsi yang bernilai

1ungsi (ang tidak 'ernilai 1ormat Nama2 ungsi$3tipe par*4 5+6% 7 pern(ataan & instruksi8 9 1ungsi (ang 'ernilai 1ormat tipe hasil Nama2 ungsi$3tipe par*4 5+6% 7 pern(ataan & instruksi8 9 !ara memanggil modul dari program utama :oid main$% 7 Nama2 ungsi$3par*4 5+6% 9

!ontoh *+ 1ungsi (ang tidak 'ernilai


;in#lude <iostream+h= && modul mem'uat garis :oid garis$% 7 or $i>?8 i<@A8 iBB% #out << C/C8
13

#out << endl8 9 && modul mem'uat judul :oid judul$% 7 int i8 #out << DEtEt,A1TAR FUKUG<< endl8 && Et > ta'ulasi garis$%8 #out <<GHudul FukuG<<GEtEtPengarangG<< endl8 garis$%8 9 && program utama $main% :oid main$% 7 judul$%8 && memanggil modul judul 9

!ontoh .+ 1ungsi (ang 'ernilai


Modul menghitung )uas2segitiga !ara I && modul menghitung luas segita loat )uas2sgt$ loat alas4 loat tinggi%
14

7 return $alas J tinggi & .%8 &&pengem'alian nilai dgn && return 9 && program utama $main% :oid main$% 7 loat A4 T8 #out <<G,ata Alas #out <<G,ata Tinggi - D8 #in == A8 - D8 #in == T8

#out <<G)uas segi tiga - D << )uas2sgt$A4T%<<endl8 9 #eterangan 8


% %

6ariable ; dengan alas + 7ariabel yang berbeda 6ariable ! dengan tinggi + 7ariabel yang berbeda

% <uas=sgt);5!* &ara pemanggilan fungsi5 yang akan menghasilkan nilai dari fungsi )uas2sgt

!ontoh 1ungsi (ang 'ernilai


Modul menghitung )uas2segitiga !ara II && modul menghitung luas segita )uas2sgt$ loat Kalas4 loat Ktinggi4 loat Kluas%
15

7 luas > alas J tinggi & .8 9 && program utama $main% :oid main$% 7 loat alas4 tinggi4luas8 #out <<G,ata Alas - D8 #in == alas8

#out <<G,ata Tinggi - D8 #in == tinggi8 )uas2sgt$alas4 tinggi4 luas%8 #out <<G)uas segi tiga - D << luas<<endl8 9 #eterangan 8
% %

6ariable >alas berisi alamat dari 7ariabel alas 6ariable >tinggi berisi alamat dari 7ariabel tinggi

% <uas=sgt)alas5tinggi5luas* &ara pemanggilan fungsi5 yang akan menghasilkan nilai dari 7ariable luas melalui alamat )passing parameter by lo&ation*

<;!2?;@ 8
(uatlah fungsi )modul* untuk menghitung nilai kuadrat suatu bilangan bulat ).. A + 0 +* .

16

Anda mungkin juga menyukai