Perancangan Program
Programming Logic and Design, Introductory, Fourth Edition
2
1
Programming Logic and Design, Introductory, Fourth Edition
3
Understanding the Mainline Logical Flow Through a Program • Understand the big picture first
Programming Logic and Design, Introductory, Fourth Edition
4
2
Merancang Program
A set of inputs
A X1 B
Program X2
C
A set of outputs
Program adalah suatu sistem pengolahan input menjadi output dengan algoritma yang benar. Kebenaran & kinerja pengolahan input menjadi output sangat tergantung pada algoritma yang dibuat oleh perancang program.
Metoda Menguji Kebenaran Program • Metoda White Box (terbuka/transparan): melakukan analisis dan evaluasi program pada algoritma dari program tsb. • Metoda Black Box (tertutup): melakukan analisis dan evaluasi hanya pada input dan output dari program tsb. Berarti program tersebut sudah harus bisa dieksekusi oleh komputer sehingga dapat diuji dengan data input dilihat outputnya.
Programming Logic and Design, Introductory, Fourth Edition
6
3
Keuntungan Pengujian Metoda Black Box & White Box
Programming Logic and Design, Introductory, Fourth Edition
7
Identifikasi Input
A X1 B
Program X2
C
Programming Logic and Design, Introductory, Fourth Edition
A set of outputs
A set of inputs
• Tentukan semua kemungkinan input (konstanta atau variabel) • Tentukan tipe, batasan (domain) nilai dan asumsi input
8
4
Identifikasi Output • Tentukan semua kemungkinan output (konstanta atau variabel) • Tentukan tipe, batasan (domain) nilai dan asumsi output • Output dikategorikan sebagai output utama (tujuan yang harus dicapai) dan output pendukung (untuk memudahkan pengguna) X1 B
Program X2
C
A set of outputs
A set of inputs
A
Programming Logic and Design, Introductory, Fourth Edition
9
Identifikasi Variabel Tambahan (Auxiliary Variable)
A set of inputs
A B
Variable tambahan
X1
Program X2
C Programming Logic and Design, Introductory, Fourth Edition
A set of outputs
• Variabel tambahan diperlukan untuk menyimpan hasil komputasi antara (sementara) untuk digunakan menghasilkan output • Tentukan tipe, batasan (domain) nilai dan asumsi variable tambahan
10
5
Deklarasi Input, Output dan Variabel Tambahan • Baik input, output dan variable tambahan perlu dinyatakan (dideklarasikan) utk menyatakan nama, tipe dan batasan nilainya.
Programming Logic and Design, Introductory, Fourth Edition
11
Deklarasi Variabel Example of declarations ABC Program: VAR 1.
2. 3. 4. 5.
A, B, C, D, X1, X2:
REAL;
Read the values of A, B & C Compute D = B2 – 4AC . Compute X1 = (-B + √D) / (2A) Compute X2 = (-B - √D) / (2A) Stop
Variable Type Nama Variables
6
Menginisialisasi Nilai Variabel VAR
A, B, C, D, X1, X2: REAL; MSG1, MSG2 : CHARS;
Inisialisasi nilai variabel
MSG1 := “Nilai A tidak boleh 0”; MSG2 := “Tidak ada jawaban bilangan nyata (riil)
1. 2. 3. 4. 5. 6. 7.
Read the values of A, B & C If A = 0 then Print MSG1; go to Step #7; Compute D = B2 – 4AC . If D < 0 then Print MSG2; go to Step #7 Compute X1 = (-B + √D) / (2A) Compute X2 = (-B - √D) / (2A) Stop
Programming Logic and Design, Introductory, Fourth Edition
13
Deklarasi Konstan (Menghitung Luas Lingkaran - 1) VAR
Radius, CircleArea: MSG1 : CHARS; CONSTANTS PHI := 22/7;
REAL;
MSG1 := “Nilai Radius tidak boleh <= 0”;
1. 2. 3. 4. 5.
Read the value of Radius If Radius <= 0 then Print MSG1; go to Step #5; Compute CircleArea = PHI*Radius*Radius; Print CircleArea Stop
Programming Logic and Design, Introductory, Fourth Edition
14
7
Deklarasi Konstan (Menghitung Luas Lingkaran - 2) VAR Radius, CircleArea, CirclePerimeter: REAL; MSG1 : CHARS; CONSTANTS PHI := 22/7;
MSG1 := “Nilai Radius tidak boleh <= 0”;
1. 2. 3. 4. 5. 6.
Read the value of Radius If Radius <= 0 then Print MSG1; go to Step #6; Compute CircleArea = PHI*Radius*Radius; Compute CirclePerimeter = 2*PHI*Radius; Print CircleArea, CirclePerimeter Stop
Programming Logic and Design, Introductory, Fourth Edition
VAR
Radius, CircleArea, CirclePerimeter: MSG1 : CHARS; CONSTANTS PHI := 22/7; Diameter := 2* Radius;
15
REAL;
MSG1 := “Nilai Radius tidak boleh <= 0”;
1. 2. 3. 4. 5. 6.
Read the value of Radius If Radius <= 0 then Print MSG1; go to Step #6; Compute CircleArea = PHI*Radius*Radius; Compute CirclePerimeter = PHI*Diameter; Print CircleArea, CirclePerimeter Stop
Programming Logic and Design, Introductory, Fourth Edition
16
8
Ass#3 1. Identifikasi semua variabel dan konstanta dari jawaban Ass#1 2. Buat pesudocode yang lengkap dari Ass#2, identifikasi Identifikas. semua variabel dan konstanta. 3. Identifikasi semua variabel input, variabel output dan variabel tambahan (auxiliary variables) dari jawban anda pada soal no 1 dan 2. 4. Dari materi yang sudah diberikan ringkas apa perbedaan mendasar antara pengujian program dengan white box dan black box method? Programming Logic and Design, Introductory, Fourth Edition
17
9