Pemrograman Terstruktur Syarif Hidayat 0812 940 2710 syarifh@bps.go.id
GOTOLess : Sekuensial, Selection, Looping Sistematika Materi Ide Pemrograman Terstruktur Defenisi, Tujuan, Kriteria Metoda dasar pemrograman terstruktur GOTOLess : Sekuensial, Selection, Looping Perbandingan bahasa pemrograman Berdasarkan kriteria pemrograman terstruktur Pemrograman Database Konsep Database Pengenalan Foxpro sebagai bahasa Pemrograman Database
Ide Pemrograman Terstruktur (1) Definisi Pemrograman yaitu aktivitas membuat program, yaitu menyusun sejumlah perintah yang dikenal komputer Terstruktur dapat berarti terpola, bentuk yang mengikuti aturan tertentu, juga berarti sesuatu yang sistematis Jadi, Pemrograman Terstruktur berarti : ……………………………………………………… ………………………………………………………
Ide Pemrograman Terstruktur (2) Ide pemrograman terstruktur muncul karena jumlah baris program semakin lama semakin besar, tentu saja hal ini terjadi karena diinginkan aplikasi yang lengkap dan lebih berkualitas Dengan ide pemrograman terstruktur diharapkan dapat membantu manajemen source code (kode program) sehingga program mudah untuk dikelola bagi kepentingan selanjutnya Tujuan utama pemrograman terstruktur adalah : agar program-program besar menjadi lebih mudah ditelusuri alur logikanya, mudah untuk dimodifikasi (dikembangkan) dan mudah pula untuk ditemukan bagian yang salah ketika program sedang diuji.
Ide Pemrograman Terstruktur (3) Kriteria pemrograman terstruktur : Struktur programnya; jelas dan tegas Fasilitas penulisan kode program; jelas dan tegas Statemen untuk kebutuhan Selection dan Looping; lengkap Fasilitas menyatakan berbagai type data (struktur data); lengkap dan tegas Fasilitas pemberian komentar; lengkap Fasilitas instruksi yang tersedia (operasi arithmatik/matematik, string, …); lengkap Fasilitas modular (baik internal maupun eksternal); lengkap Fasilitas debugging, mudah dan jelas
Filosofis Terstruktur a b c d Mana yang susunannya terstruktur (teratur, …) Mana yang lebih mudah anda hafalkan Jika akan ditambah satu batang lagi, dimana harus diletakkan agar posisinya dapat dinilai benar Jika susunannya dirombak, mana yang lebih mudah untuk disusun kembali
Metoda dasar pemrograman terstruktur (1) Ide awal penerapan pemrograman terstruktur yaitu dengan menghindari penggunaan GOTO untuk melompat ke bagian program tertentu Kegunaan GOTO untuk melompat ke baris program tertentu, secara umum dapat dibagi ke dalam 2 kelompok : Melompat ke bagian bawah program dari posisi program saat ini Melompat ke bagian atas program dari posisi program saat ini Dengan pemrograman terstruktur; Jika ada kebutuhan melompat ke bagian bawah, dapat digantikan dengan perintah Selection (If, Do Case,…) Jika ada kebutuhan melompat ke bagian atas, dapat digantikan dengan perintah Looping (for, Do While,…)
Metoda dasar pemrograman terstruktur (2) Dalam pemrograman terstruktur hanya dikenal 3 konstruksi: Sekuensial, yaitu program yang tidak memiliki lompatan. Baris program dijalankan secara normal (lurus) satu per-satu dari atas ke bawah Selection, yaitu program yang memiliki pilihan apakah harus menjalankan baris program sesuai dengan urutannya atau melompati sejumlah baris program tersebut Looping, yaitu program yang juga mengandung pilihan apakah akan mengulangi program yang sudah pernah dijalankan sebelumnya atau tidak
Beberapa bentuk logika terstruktur dengan flow chart 1. Struktur urut sederhana (Simple sequence) 3. Struktur 2 pilihan dengan IF-THEN-ELSE 2. Struktur 1 pilihan dengan IF-THEN
4a. Struktur banyak pilihan dengan IF-THEN-ELSEIF Lanjutan : 4a. Struktur banyak pilihan dengan IF-THEN-ELSEIF 4b. Struktur banyak pilihan dengan DO CASE
5. Struktur perulangan FOR 6. Struktur perulangan DO WHILE Lanjutan : 5. Struktur perulangan FOR 6. Struktur perulangan DO WHILE For
Statemen kontrol terstruktur : menyembunyikan goto Proses1 If {kondisi=false } then goto lompat Proses1a Lompat: Proses2 IF-THEN Proses 1 Proses1 If {kondisi } then Proses1a Endif Proses2 Kondisi true false Proses 1a Analisa : Proses 2 Jika kondisi=true, urutan pelaksanaan : Proses1 Proses1a Proses2 Jika kondisi=false, urutan pelaksanaan : Proses1 Proses2
Analisa : IF-THEN-ELSE Jika kondisi=true, Jika kondisi=false, Proses1 If {kondisi=true } then goto lompat1 else goto lompat2 Lompat1: Proses1b goto lompat3 Lompat2: Proses1a Lompat3: Proses2 IF-THEN-ELSE Proses 1 Kondisi true false Proses1 If {kondisi=true } then Proses1b else proses1a end if Proses2 Proses 1b Proses 1a Proses 2 Analisa : Jika kondisi=true, urutan pelaksanaan : Proses1 Proses1b Proses2 Jika kondisi=false, urutan pelaksanaan : Proses1 Proses1a Proses2
Lanjutan menyembunykan goto Looping : FOR For I=1 to 5 Proses 1 Proses 2 Next I Proses 3 FOR I=1 to 5 Proses1 Proses2 I=1 Ulang : Proses1 Proses2 I=I+1 If I<=5 then goto Ulang Proses3 Proses3
Looping : WHILE Ulang : If {kondisi=true} then Proses1 Proses2 While {kondisi=true} Proses 1 Proses 2 Wend Proses 3 While {kondisi} Proses1 Proses2 Ulang : If {kondisi=true} then Proses1 Proses2 goto Ulang Proses3 Proses3
Contoh flow chart dengan kontrol lengkap : start C=2 C=C=1 C>12 end
Contoh flow chart dengan beberapa lompatan tidak terstruktur : start Lompatan tidak terstruktur : Melompat ke bagian yang belum tentu dilewati Melompat keluar dari daerah induknya end
TUGAS-01 Cari contoh aplikasi / sistem yang telah dibuat oleh BPS terkait dengan pengolahan data hasil survei/sensus yang menggunakan database Nama program Software yang digunakan Database yang digunakan Daftar/kuesioner Pedoman entri data