SlideShare uma empresa Scribd logo
1 de 36
Cover Bahan Kuliah Teori : Pemrograman Terstruktur [email_address] Herianto
Sistematika Materi ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Konsep Pemrograman ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ilustrasi  Pemrograman Komputer CPU Programmer Instruksi A Instruksi D Data D Instruksi B Data A Instruksi C Sejumlah Instruksi dan data Mov A,05 Mov B,12 Add A,B Assembly A = 05 + 12 High/Medium Level 3C 05 3D 12 2D Hexa Tool 00011100 00000101 00111101 00010010 00101101 ……… . ……… . ……… . ……… . ……… . 0002 0100 0101 ……… . 0001 0102 0103 Susunan instruksi dan data dalam memory
Sejarah bahasa Pemrograman
Generasi dan Jenis Bahasa Pemrograman ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Perbandingan Bahasa Pemrograman (Umum) (Mc. Connell) Berdasarkan tujuan tertentu : Berdasarkan jumlah instruksi dibandingkan dengan assembler (Mc. Connell) Berdasarkan kriteria pemrograman terstruktur : Tabel ini akan dilengkapi selama perkuliahan berlangsung Jenis Program Bahasa Terbaik Bahasa Terburuk Data terstruktur ADA, C /C++, PASCAL Assembler, BASIC Proyek cepat BASIC PASCAL, ADA, Assembler Eksekusi cepat Assembler, C BASIC, Intrepreter Language Kalkulasi matematika FORTRAN   PASCAL Menggunakan memori dinamis PASCAL, C BASIC    Lingkungan bermemori terbatas  BASIC, Assembler, C FORTRAN Program real-time ADA, Assembler, C BASIC, FORTRAN Manipulasi string BASIC, PASCAL C Program mudah dikelola PASCAL, ADA C, FORTRAN Bahasa Rasio Assembler 1: 1 ADA 1 : 4.5  Quick / Turbo / Basic 1 : 5  C  1 : 2.5  FORTRAN   1 : 3  PASCAL 1 : 3.5 Foxpro C Pascal Basic Bahasa Pemrograman Kriteria
Proses Pembuatan Aplikasi
Contoh Proses Pembuatan Aplikasi (1) : Permasalahan 1 : Si Upik selalu membeli buah apel untuk dibagikan ke beberapa orang anak yatim Ia kesulitan untuk membagi secara adil berapa buah apel setiap anak mendapatkan jika ia beli N buah. Karena sering ia lakukan, ia membutuhkan aplikasi untuk menghitung kebutuhan tersebut. Proses pemecahan : Permasalahan di atas dapat disederhanakan dengan menggambarkan bagaimana dialog di layar komputer yang diharapkan terjadi terhadap aplikasi yang dibutuhkan tersebut : Contoh dialog yang diharapkan : Aplikasi pembagian buah apel Ketik jumlah buah apel yang dibeli  : …  {ENTER} Ketik jumlah anak yang akan diberi : …  {ENTER} Solusi : Setiap anak mendapatkan : … buah apel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Contoh Proses Pembuatan Aplikasi  (2) : Permasalahan 2 : Si Buyung kelas 2 SMU. Oleh guru matematik-nya ia sering diminta menghitung soal-soal persamaan kuadrat  yang jumlahnya lumayan banyak.  Si Buyung memang jago matematik, tapi dia juga sedang mendalami pemrograman komputer. Dia tahu kalau masalah di atas dapat diatasi dengan membuatkan aplikasinya.  Proses pemecahan : Permasalahan di atas juga dapat disederhanakan dengan menggambarkan bagaimana dialog di layar komputer yang diharapkan terhadap aplikasi tersebut : Contoh dialog yang diharapkan : Aplikasi menghitung persamaan kuadrat Masukkan nilai koefisien A :  …  {ENTER} Masukkan nilai koefisien B  :  …  {ENTER} Masukkan nilai koefisien C :  …  {ENTER} Penyelesaian : Solusi merupakan 2 akar real yang berbeda Solusi 1 (X1) = … Solusi 2 (X2) = … Dari dialog tersebut diketahui bahwa program membutuhkan 3 input dan 2 output. Misal kedua input yang dibutuhkan disebut A, B dan C dan output disebut X1 dan X2. Maka secara matematis, dengan menggunakan rumus abc yang telah baku, proses mendapat X1 dan X2 dapat dihitung seperti berikut : X1 = (-b+  D)/2A X2 = (-b-  D)/2A Dimana D = b 2 –  4AC Sebelum menghitung X1 dan X2 perlu diselidiki apakah nilai A=0 atau tidak, sebab pada persamaan kuadrat nilai A tidak boleh 0 Juga harus dihitung terlebih dahulu nilai D, dan diselidiki : Jika D>0;  Penyelesaian (X1 dan X2) merupakan nilai real dan berbeda Jika D = 0; penyelesaian (X1 dan X2) merupakan nilai real dan sama (X1=X2) Jika D<0; penyelesaian (X1 dan X2) merupakan nilai imajiner
Lanjutan ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Proses pemecahan tersebut urutannya (algoritma) adalah : Pembuatan Kode Program : Setelah kita dapatkan algoritma dari permasalahan, maka langkah selanjutnya adalah membuat kode programnya Kode program permasalahan 1 Kode program dari permasalahan 1 di atas bersifat sekuensial murni. Artinya tidak membutuhkan perintah untuk melompat dari satu bagian program ke bagian program lain. Kode program seperti ini sangat mudah untuk membuatnya menggunakan bahasa pemrograman apa pun Kode Program permasalahan 2 Kode program dari permasalahan 2 tidak lagi bersifat sekuensial murni, karena membutuhkan perintah untuk melompat ke bagian program tertentu. Untuk melompat ke bagian program tertentu dapat menggunakan perintah GOTO atau dapat juga dengan menggunakan  metoda  PEMROGRAMAN TERSTRUKTUR
Simbol-simbol untuk menggambarkan Flow Chart Digunakan untuk menunjukkan awal dan akhir program Digunakan untuk memberikan nilai awal (inisial) pada suatu variabel atau counter Digunakan untuk proses, pengolahan arithmatik, dan pemindahan data Digunakan untuk mewakili operasi perbandingan logika yang dibutuhkan pada  Selection  dan  Looping Digunakan untuk proses yang detailnya dijelaskan terpisah, misalkan untuk menyatakan prosedur, atau sub program Digunakan untuk hubungan arus proses yang terputus masih di halaman yang sama Digunakan untuk hubungan arus proses yang terputus di halaman yang berbeda Digunakan untuk menghubungan antar simbol/elemen yang lain dan sekaligus menyatakan arah aliran Digunakan untuk menyatakan operasi memasukkan data/input dan menampilkan data/output
Contoh Flow Chart : Start Masukkan data jumlah apel ke var A Masukkan data jumlah anak ke var N C = A / N Tampilkan : Setiap anak mendapat C apel end Start Masukkan nilai koefisien A ke var A Masukkan nilai koefisien B ke var B Masukkan nilai koefisien C ke var C A=0 Menanyakan apakah ingin  menghitung lagi ? LG end D = b 2 –  4AC D>0 D=0 Hitung penyelesaian real Dengan akar berbeda Hitung penyelesaian real Dengan akar sama Hitung penyelesaian  Bilangan imajiner Permasalahan 1 : Permasalahan 2 : LG=Ya
Ide Pemrograman terstruktur 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 Pemrograman Terstruktur  berarti : ……………………………………………………… ……………………………………………………… Orang pertama  yang mencetuskan ide pemrograman terstruktur adalah Profesor  Edsger W. Dijkstra dari University of Eindhoven, Nederland. Ide utamanya adalah bahwa statemen GOTO sebaiknya tidak digunakan di dalam pemrograman terstruktur, sebab bisa membuat program menjadi ruwet. Ide ini ditanggapi oleh HD Milis, yang beranggapan bahwa pemrograman terstruktur semestinya tidak hanya dihubungkan dengan tanpa penggunaan GOTO, tetapi yang lebih utama adalah struktur program itulah yang menentukan apakah suatu pemrograman terstruktur atau tidak ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],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.
Filosofis Terstruktur a b c d ,[object Object],[object Object],[object Object],[object Object]
Metoda dasar pemrograman terstruktur ,[object Object],[object Object],[object Object],[object Object],Dengan pemrograman terstruktur; Jika ada kebutuhan melompat ke bagian bawah, dapat digantikan dengan perintah Selection ( If, Case, Select, Switch ,…) Jika ada kebutuhan melompat ke bagian atas, dapat digantikan dengan perintah Looping ( for, While, repeat-until ,…) Prinsip utamanya adalah, program tidak boleh melompat ke atas, kecuali untuk keperluan pengulangan ,[object Object],[object Object],[object Object],[object Object]
Beberapa bentuk logika terstruktur dengan flow chart 1. Struktur urut sederhana (Simple sequence) 2. Struktur 1 pilihan dengan IF-THEN  3. Struktur 2 pilihan dengan IF-THEN-ELSE
Lanjutan : 4a. Struktur banyak pilihan dengan IF-THEN-ELSEIF  4b. Struktur banyak pilihan dengan CASE
Lanjutan : 5. Struktur perulangan FOR  For 6. Struktur perulangan WHILE 7. Struktur perulangan UNTIL
Statemen kontrol terstruktur :  menyembunyikan  goto Kondisi Proses 1a IF-THEN true false Proses 1 Proses 2 Proses1 If {kondisi } then  Proses1a End if Proses2   Proses1 If {kondisi=false }  then  goto lompat   Proses1a Lompat: Proses2   Jika kondisi=true,  urutan pelaksanaan : Proses1 Proses1a Proses2 Jika kondisi=false,  urutan pelaksanaan : Proses1 Proses2 Analisa :
Lanjutan  menyembunykan goto Kondisi Proses 1b IF-THEN-ELSE true false Proses 1 Proses 2 Proses1 If {kondisi=true } then  Proses1b  else   proses1a end if   Proses2   Proses1 If {kondisi=true }  then  goto lompat1  else  goto lompat2   Lompat1: Proses1b goto lompat3 Lompat2:   Proses1a Lompat3: Proses2   Jika kondisi=true,  urutan pelaksanaan : Proses1 Proses1b Proses2 Jika kondisi=false,  urutan pelaksanaan : Proses1 Proses1a Proses2 Analisa : Proses 1a
Lanjutan menyembunykan goto Kondisi1 Proses 2a IF-THEN-ELSE-IF true false Proses 1 Proses 2d Proses1 If {kondisi1=true }  then  Proses2a else if  {kondisi2=true } then  Proses2b else if   {kondisi3=true } then  Proses2c else Proses2d end if Proses3 Proses1 If {kondisi1=true } then goto lompat1  If {kondisi2=true } then goto lompat2 If {kondisi3=true } then goto lompat3 Goto lompat4 Lompat1: Proses2a goto habis  Lompat2:  Proses2b goto habis  Lompat3: Proses2c goto habis  Lompat4: proses2d Habis: proses3   Kondisi2 Kondisi3 Proses 2b Proses 2c Proses 3 Proses1 Case  of var Kondisi1:  Proses2a Kondisi2: Proses2b Kondisi3: Proses2c else Proses2d end case Proses3
Lanjutan menyembunykan goto Looping : FOR I=1 Ulang : Proses1 Proses2 I=I+1 If I<=5 then goto  Ulang Proses3 For I=1 to 5 Proses 1 Proses 2  Next I Proses 3 Proses1 Proses2 FOR I=1 to 5 Proses3
Lanjutan menyembunykan goto Looping : WHILE Ulang : If {kondisi=true} then  Proses1 Proses2 goto  Ulang Proses3 While {kondisi=true} Proses 1 Proses 2  Wend Proses 3 While {kondisi} Proses1 Proses2 Proses3
Lanjutan menyembunykan goto Looping : UNTIL Ulang : Proses1 Proses2 If {kondisi=true} then goto  Ulang Proses3 do Proses 1 Proses 2  Loop Until {kondisi=true} Proses 3 Proses1 Proses1 Until {kondisi} Proses3
Contoh flow chart dengan kontrol lengkap : C=2 C=C=1 C>12 end start
Contoh flow chart dengan beberapa lompatan tidak terstruktur : end start ,[object Object],[object Object],[object Object]
Struktur Data dan Pemrograman terstruktur ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tabel Perbandingan Bahasa Pemrograman   (Berdasarkan kriteria pemrograman terstruktur) 4=Baik sekali  3=Baik  2=Cukup  1=Kurang TOTAL Kelengkapan pesan (Syntex error, Compile error, Run-time error) Modular external (file kode terpisah) Fungsi-fungsi built-in (string, matematik, grafis, …) Komentar banyak baris Komentar di tengah baris Pointer Set, enumerate, array, record, file Ketegasan susunan deklarasi FOR UNTIL IF-THEN-ELSEIF IF-THEN-ELSE CASE WHILE Ketegasan penggunaan simbol (case sensitif – non case sensitif)  Kemudahan memahami pesan kesalahan Modular internal (procedure, function) Operator aritmatik (+,-,*,/,^), operator relasi (<, <=, >, >=, <>),operator logika (AND, OR, NOT),assignment (=) Komentar 1 baris Type dasar (integer, real,char, string, boolean) IF-THEN Kelengkapan simbol untuk penulisan kode  Kelengkapan deklarasi elemen program Sub kriteria Fasilitas debugging,  mudah dan jelas Fasilitas modular (baik internal maupun eksternal);  lengkap Fasilitas instruksi/operasi yang tersedia Fasilitas pemberian komentar;  lengkap Fasilitas menyatakan berbagai type data Statemen untuk kebutuhan Selection dan Looping;  lengkap   Fasilitas penulisan kode program;  jelas dan tegas Struktur programnya;  jelas dan tegas Foxpro C Pascal Basic Bahasa Pemrograman Kriteria
Metoda Desain Pemrograman Terstruktur ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Untuk membantu dan menjamin dihasilkannya program yang terstruktur, dapat digunakan beberapa metoda/alat berikut :
Metode Perancangan Top-down Sub Masalah A  Sub Masalah B  Sub Masalah C  Masalah Besar Sub Masalah A1 Sub Masalah A2 B A  C A1 A2 Masalah utama Strategi umum dalam penyelesaian masalah besar; kompleks; rumit
Contoh Top-down : Mahasiswa Dosen  Perkuliahan  Sistem Informasi Akademis Entry data Hapus data Laporan data Entry data Hapus data Laporan data Entry data Hapus data Laporan data
Metode Modular :  Implementasi Top-down …… .. Call A …… .. Call B …… .. Call C …… .. …… . Call A1 …… . Call A2 …… .. ……. ……. ……. ……. ……. ……. ……. ……. A B C A1 A2 Bagian Utama ,[object Object],[object Object],[object Object]
Diagram Chart Nassi-Schneiderman Statemen1 Statemen2 Stateme3 if ya tdk proses1 if ya tdk proses1 proses2 While kondisi proses2 proses2 Until kondisi Mulai Masukkan Nilai koefisien A Masukkan Nilai koefisien B Masukkan Nilai Koefisien C D = B*B-4*A*C D<0 Imajiner Real sama Real berbeda D=0 ya tdk ya tdk Contoh :
Tabel Decision ,[object Object],[object Object],[object Object],[object Object],Contoh : Jika nilai rata-rata >=85 dan jumlah kehadiran mencapai >=90% maka siswa tersebut akan mendapat bonus, jika nilai rata-rata<85 walaupun jumlah kehadiran mencapai >=90% maka siswa tersebut tidak mendapat bonus Latihan  : Jika unit yang dipesan untuk barang tertentu sama dengan atau melebihi jumlah minimum dan pemesannya adalah agen, maka akan mendapat potongan. Sebaliknya jika kurang dari jumlah minimum, walaupun pemesannya adalah agen, maka tidak mendapat potongan. Jika persediaan di gudang mencukupi maka unit pesanan dikirim sepenuhnya. Jika persediaan di gudang tidak mencukupi jumlah pesanan, maka unit yang ada akan dikirim sedangkan kekurangannya akan dibuatkan catatan (back order) Aksi Kondisi 4 3 2 1 Rules x x x Tidak mendapat bonus N Y N Y Apakah jumlah kehadiran>=90% x Mendapat bonus N N Y Y Apakah nilai rata2>=85 4 3 2 1 Rules
Konversi flow chart ini ke bahasa pemrograman : a.  Basic  atau  foxpro b.  Pascal  atau  C C=2, M=3 C=C+1 C>12 C>M For I=M to C Next I M=M+1 (I*C)>M I > M C<=M C=M+1 M=C+1 P=C+M M=P+2 M=C+5 C=C+M end start C=C-M T F C=C*M Cetak C Cetak M F T F F T F T C  = 37 M = 25

Mais conteúdo relacionado

Mais procurados

Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorialSiti Khotijah
 
Barisan yang konvergen dan barisan yang divergen delima
Barisan yang konvergen dan barisan yang divergen delimaBarisan yang konvergen dan barisan yang divergen delima
Barisan yang konvergen dan barisan yang divergen delimaDominggos Keayse D'five
 
Integral Riemann Stieltjes
Integral Riemann StieltjesIntegral Riemann Stieltjes
Integral Riemann StieltjesJoko Soebagyo
 
Tabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan HeksadesimalTabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan HeksadesimalMustahal SSi
 
6. analisis semantik
6. analisis semantik6. analisis semantik
6. analisis semantikyuster92
 
Materi 3 Finite State Automata
Materi 3   Finite State AutomataMateri 3   Finite State Automata
Materi 3 Finite State Automataahmad haidaroh
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuanahmad haidaroh
 
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Fatma Qolbi
 
Relasi dan fungsi - matematika diskrit
Relasi dan fungsi - matematika diskritRelasi dan fungsi - matematika diskrit
Relasi dan fungsi - matematika diskrithaqiemisme
 
Pertemuan 9 Representasi Pengetahuan
Pertemuan 9 Representasi PengetahuanPertemuan 9 Representasi Pengetahuan
Pertemuan 9 Representasi PengetahuanEndang Retnoningsih
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)zachrison htg
 
Bab 5. Aplikasi Turunan ( Kalkulus 1 )
Bab 5. Aplikasi Turunan ( Kalkulus 1 )Bab 5. Aplikasi Turunan ( Kalkulus 1 )
Bab 5. Aplikasi Turunan ( Kalkulus 1 )Kelinci Coklat
 
Modul 2 keterbagian bilangan bulat
Modul 2   keterbagian bilangan bulatModul 2   keterbagian bilangan bulat
Modul 2 keterbagian bilangan bulatAcika Karunila
 
Fuzzy fungsi keanggotaan
Fuzzy fungsi keanggotaanFuzzy fungsi keanggotaan
Fuzzy fungsi keanggotaanRoziq Bahtiar
 

Mais procurados (20)

Matriks elementer
Matriks elementerMatriks elementer
Matriks elementer
 
Fungsi Pembangkit
Fungsi PembangkitFungsi Pembangkit
Fungsi Pembangkit
 
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
 
Barisan yang konvergen dan barisan yang divergen delima
Barisan yang konvergen dan barisan yang divergen delimaBarisan yang konvergen dan barisan yang divergen delima
Barisan yang konvergen dan barisan yang divergen delima
 
Integral Riemann Stieltjes
Integral Riemann StieltjesIntegral Riemann Stieltjes
Integral Riemann Stieltjes
 
Grup permutasi
Grup permutasiGrup permutasi
Grup permutasi
 
Tabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan HeksadesimalTabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
 
6. analisis semantik
6. analisis semantik6. analisis semantik
6. analisis semantik
 
Materi 3 Finite State Automata
Materi 3   Finite State AutomataMateri 3   Finite State Automata
Materi 3 Finite State Automata
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuan
 
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
 
Materi 6. perulangan
Materi 6. perulanganMateri 6. perulangan
Materi 6. perulangan
 
Relasi dan fungsi - matematika diskrit
Relasi dan fungsi - matematika diskritRelasi dan fungsi - matematika diskrit
Relasi dan fungsi - matematika diskrit
 
kriptografi hill cipher
kriptografi hill cipherkriptografi hill cipher
kriptografi hill cipher
 
Pertemuan 9 Representasi Pengetahuan
Pertemuan 9 Representasi PengetahuanPertemuan 9 Representasi Pengetahuan
Pertemuan 9 Representasi Pengetahuan
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
 
Koset Suatu Grup
Koset Suatu GrupKoset Suatu Grup
Koset Suatu Grup
 
Bab 5. Aplikasi Turunan ( Kalkulus 1 )
Bab 5. Aplikasi Turunan ( Kalkulus 1 )Bab 5. Aplikasi Turunan ( Kalkulus 1 )
Bab 5. Aplikasi Turunan ( Kalkulus 1 )
 
Modul 2 keterbagian bilangan bulat
Modul 2   keterbagian bilangan bulatModul 2   keterbagian bilangan bulat
Modul 2 keterbagian bilangan bulat
 
Fuzzy fungsi keanggotaan
Fuzzy fungsi keanggotaanFuzzy fungsi keanggotaan
Fuzzy fungsi keanggotaan
 

Semelhante a OPTIMASI_PEMROGRAMAN_TERSTRUKTUR

PENGEMBANGAN PROGRAM TERSTRUKTUR
PENGEMBANGAN PROGRAM TERSTRUKTURPENGEMBANGAN PROGRAM TERSTRUKTUR
PENGEMBANGAN PROGRAM TERSTRUKTUREDIS BLOG
 
pendahuluanv2.ppt
pendahuluanv2.pptpendahuluanv2.ppt
pendahuluanv2.pptKemangKres
 
Logika pemrograman hand out
Logika pemrograman hand outLogika pemrograman hand out
Logika pemrograman hand outgivaro igfar
 
Modul mata kuliah konsep dasar pemrograman
Modul mata kuliah konsep dasar pemrogramanModul mata kuliah konsep dasar pemrograman
Modul mata kuliah konsep dasar pemrogramanMuraba Nasuha
 
Introduction to-basic language-programming
Introduction to-basic language-programmingIntroduction to-basic language-programming
Introduction to-basic language-programmingstaffpengajar
 
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdfDasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdfRizaJr
 
Pengantar algoritma dan pemrograman
Pengantar algoritma dan pemrogramanPengantar algoritma dan pemrograman
Pengantar algoritma dan pemrogramanMAFauzan
 
Teknik kompilasi
Teknik kompilasiTeknik kompilasi
Teknik kompilasiHedyIzmaya
 
Materi matakuliah bahasa c
Materi matakuliah bahasa cMateri matakuliah bahasa c
Materi matakuliah bahasa cIzhan Nassuha
 
Algoritma dan Pemrograman
Algoritma dan PemrogramanAlgoritma dan Pemrograman
Algoritma dan PemrogramanDiana Anggraini
 
pertemuan 2 Dasar pemograman.pdf
pertemuan 2 Dasar pemograman.pdfpertemuan 2 Dasar pemograman.pdf
pertemuan 2 Dasar pemograman.pdfProjectme1
 
Laporan praktikum ii visual
Laporan praktikum ii visualLaporan praktikum ii visual
Laporan praktikum ii visualrahmi wahyuni
 
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMANPENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMANNur Kholifah Hidayah
 
Prog komp - history&algorithm
Prog komp - history&algorithmProg komp - history&algorithm
Prog komp - history&algorithmRudi Wicaksana
 

Semelhante a OPTIMASI_PEMROGRAMAN_TERSTRUKTUR (20)

PENGEMBANGAN PROGRAM TERSTRUKTUR
PENGEMBANGAN PROGRAM TERSTRUKTURPENGEMBANGAN PROGRAM TERSTRUKTUR
PENGEMBANGAN PROGRAM TERSTRUKTUR
 
pendahuluanv2.ppt
pendahuluanv2.pptpendahuluanv2.ppt
pendahuluanv2.ppt
 
Logika pemrograman hand out
Logika pemrograman hand outLogika pemrograman hand out
Logika pemrograman hand out
 
Modul mata kuliah konsep dasar pemrograman
Modul mata kuliah konsep dasar pemrogramanModul mata kuliah konsep dasar pemrograman
Modul mata kuliah konsep dasar pemrograman
 
Bab1
Bab1Bab1
Bab1
 
Pemrograman komputer
Pemrograman komputerPemrograman komputer
Pemrograman komputer
 
Algoritma dan Pemrograman
Algoritma dan Pemrograman Algoritma dan Pemrograman
Algoritma dan Pemrograman
 
Introduction to-basic language-programming
Introduction to-basic language-programmingIntroduction to-basic language-programming
Introduction to-basic language-programming
 
modul algoritma Bab 1
modul algoritma Bab 1modul algoritma Bab 1
modul algoritma Bab 1
 
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdfDasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
 
Pertemuan_2
Pertemuan_2Pertemuan_2
Pertemuan_2
 
Pengantar algoritma dan pemrograman
Pengantar algoritma dan pemrogramanPengantar algoritma dan pemrograman
Pengantar algoritma dan pemrograman
 
Teknik kompilasi
Teknik kompilasiTeknik kompilasi
Teknik kompilasi
 
Materi matakuliah bahasa c
Materi matakuliah bahasa cMateri matakuliah bahasa c
Materi matakuliah bahasa c
 
Algoritma dan Pemrograman
Algoritma dan PemrogramanAlgoritma dan Pemrograman
Algoritma dan Pemrograman
 
pertemuan 2 Dasar pemograman.pdf
pertemuan 2 Dasar pemograman.pdfpertemuan 2 Dasar pemograman.pdf
pertemuan 2 Dasar pemograman.pdf
 
Laporan praktikum ii visual
Laporan praktikum ii visualLaporan praktikum ii visual
Laporan praktikum ii visual
 
Laporan praktikum dpk modul 1
Laporan praktikum dpk modul 1Laporan praktikum dpk modul 1
Laporan praktikum dpk modul 1
 
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMANPENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
 
Prog komp - history&algorithm
Prog komp - history&algorithmProg komp - history&algorithm
Prog komp - history&algorithm
 

Último

PERTEMUAN 9 KESEIM 3 SEKTOR.............
PERTEMUAN 9 KESEIM 3 SEKTOR.............PERTEMUAN 9 KESEIM 3 SEKTOR.............
PERTEMUAN 9 KESEIM 3 SEKTOR.............SenLord
 
PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024MALISAAININOORBINTIA
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...Riyan Hidayatullah
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfEmeldaSpd
 
Teks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian KasihTeks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian Kasihssuserfcb9e3
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxrofikpriyanto2
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdfWahyudinST
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdfcicovendra
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxBambang440423
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxFardanassegaf
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxg66527130
 
Teknik Menjawab Kertas P.Moral SPM 2024.pptx
Teknik Menjawab Kertas P.Moral SPM  2024.pptxTeknik Menjawab Kertas P.Moral SPM  2024.pptx
Teknik Menjawab Kertas P.Moral SPM 2024.pptxwongcp2
 
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfPPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfNatasyaA11
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlineMMario4
 
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.pptP_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.pptAfifFikri11
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKARenoMardhatillahS
 
Panduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfPanduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfandriasyulianto57
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptxAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptxHeriyantoHeriyanto44
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptTaufikFadhilah
 
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaDinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaEzraCalva
 

Último (20)

PERTEMUAN 9 KESEIM 3 SEKTOR.............
PERTEMUAN 9 KESEIM 3 SEKTOR.............PERTEMUAN 9 KESEIM 3 SEKTOR.............
PERTEMUAN 9 KESEIM 3 SEKTOR.............
 
PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
 
Teks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian KasihTeks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian Kasih
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
 
Teknik Menjawab Kertas P.Moral SPM 2024.pptx
Teknik Menjawab Kertas P.Moral SPM  2024.pptxTeknik Menjawab Kertas P.Moral SPM  2024.pptx
Teknik Menjawab Kertas P.Moral SPM 2024.pptx
 
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfPPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
 
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.pptP_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
 
Panduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfPanduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdf
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptxAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.ppt
 
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaDinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
 

OPTIMASI_PEMROGRAMAN_TERSTRUKTUR

  • 1. Cover Bahan Kuliah Teori : Pemrograman Terstruktur [email_address] Herianto
  • 2.
  • 3.
  • 4. Ilustrasi Pemrograman Komputer CPU Programmer Instruksi A Instruksi D Data D Instruksi B Data A Instruksi C Sejumlah Instruksi dan data Mov A,05 Mov B,12 Add A,B Assembly A = 05 + 12 High/Medium Level 3C 05 3D 12 2D Hexa Tool 00011100 00000101 00111101 00010010 00101101 ……… . ……… . ……… . ……… . ……… . 0002 0100 0101 ……… . 0001 0102 0103 Susunan instruksi dan data dalam memory
  • 6.
  • 7. Perbandingan Bahasa Pemrograman (Umum) (Mc. Connell) Berdasarkan tujuan tertentu : Berdasarkan jumlah instruksi dibandingkan dengan assembler (Mc. Connell) Berdasarkan kriteria pemrograman terstruktur : Tabel ini akan dilengkapi selama perkuliahan berlangsung Jenis Program Bahasa Terbaik Bahasa Terburuk Data terstruktur ADA, C /C++, PASCAL Assembler, BASIC Proyek cepat BASIC PASCAL, ADA, Assembler Eksekusi cepat Assembler, C BASIC, Intrepreter Language Kalkulasi matematika FORTRAN   PASCAL Menggunakan memori dinamis PASCAL, C BASIC   Lingkungan bermemori terbatas BASIC, Assembler, C FORTRAN Program real-time ADA, Assembler, C BASIC, FORTRAN Manipulasi string BASIC, PASCAL C Program mudah dikelola PASCAL, ADA C, FORTRAN Bahasa Rasio Assembler 1: 1 ADA 1 : 4.5 Quick / Turbo / Basic 1 : 5 C 1 : 2.5 FORTRAN   1 : 3 PASCAL 1 : 3.5 Foxpro C Pascal Basic Bahasa Pemrograman Kriteria
  • 9.
  • 10. Contoh Proses Pembuatan Aplikasi (2) : Permasalahan 2 : Si Buyung kelas 2 SMU. Oleh guru matematik-nya ia sering diminta menghitung soal-soal persamaan kuadrat yang jumlahnya lumayan banyak. Si Buyung memang jago matematik, tapi dia juga sedang mendalami pemrograman komputer. Dia tahu kalau masalah di atas dapat diatasi dengan membuatkan aplikasinya. Proses pemecahan : Permasalahan di atas juga dapat disederhanakan dengan menggambarkan bagaimana dialog di layar komputer yang diharapkan terhadap aplikasi tersebut : Contoh dialog yang diharapkan : Aplikasi menghitung persamaan kuadrat Masukkan nilai koefisien A : … {ENTER} Masukkan nilai koefisien B : … {ENTER} Masukkan nilai koefisien C : … {ENTER} Penyelesaian : Solusi merupakan 2 akar real yang berbeda Solusi 1 (X1) = … Solusi 2 (X2) = … Dari dialog tersebut diketahui bahwa program membutuhkan 3 input dan 2 output. Misal kedua input yang dibutuhkan disebut A, B dan C dan output disebut X1 dan X2. Maka secara matematis, dengan menggunakan rumus abc yang telah baku, proses mendapat X1 dan X2 dapat dihitung seperti berikut : X1 = (-b+  D)/2A X2 = (-b-  D)/2A Dimana D = b 2 – 4AC Sebelum menghitung X1 dan X2 perlu diselidiki apakah nilai A=0 atau tidak, sebab pada persamaan kuadrat nilai A tidak boleh 0 Juga harus dihitung terlebih dahulu nilai D, dan diselidiki : Jika D>0; Penyelesaian (X1 dan X2) merupakan nilai real dan berbeda Jika D = 0; penyelesaian (X1 dan X2) merupakan nilai real dan sama (X1=X2) Jika D<0; penyelesaian (X1 dan X2) merupakan nilai imajiner
  • 11.
  • 12. Simbol-simbol untuk menggambarkan Flow Chart Digunakan untuk menunjukkan awal dan akhir program Digunakan untuk memberikan nilai awal (inisial) pada suatu variabel atau counter Digunakan untuk proses, pengolahan arithmatik, dan pemindahan data Digunakan untuk mewakili operasi perbandingan logika yang dibutuhkan pada Selection dan Looping Digunakan untuk proses yang detailnya dijelaskan terpisah, misalkan untuk menyatakan prosedur, atau sub program Digunakan untuk hubungan arus proses yang terputus masih di halaman yang sama Digunakan untuk hubungan arus proses yang terputus di halaman yang berbeda Digunakan untuk menghubungan antar simbol/elemen yang lain dan sekaligus menyatakan arah aliran Digunakan untuk menyatakan operasi memasukkan data/input dan menampilkan data/output
  • 13. Contoh Flow Chart : Start Masukkan data jumlah apel ke var A Masukkan data jumlah anak ke var N C = A / N Tampilkan : Setiap anak mendapat C apel end Start Masukkan nilai koefisien A ke var A Masukkan nilai koefisien B ke var B Masukkan nilai koefisien C ke var C A=0 Menanyakan apakah ingin menghitung lagi ? LG end D = b 2 – 4AC D>0 D=0 Hitung penyelesaian real Dengan akar berbeda Hitung penyelesaian real Dengan akar sama Hitung penyelesaian Bilangan imajiner Permasalahan 1 : Permasalahan 2 : LG=Ya
  • 14.
  • 15.
  • 16.
  • 17. Beberapa bentuk logika terstruktur dengan flow chart 1. Struktur urut sederhana (Simple sequence) 2. Struktur 1 pilihan dengan IF-THEN 3. Struktur 2 pilihan dengan IF-THEN-ELSE
  • 18. Lanjutan : 4a. Struktur banyak pilihan dengan IF-THEN-ELSEIF 4b. Struktur banyak pilihan dengan CASE
  • 19. Lanjutan : 5. Struktur perulangan FOR For 6. Struktur perulangan WHILE 7. Struktur perulangan UNTIL
  • 20. Statemen kontrol terstruktur : menyembunyikan goto Kondisi Proses 1a IF-THEN true false Proses 1 Proses 2 Proses1 If {kondisi } then Proses1a End if Proses2 Proses1 If {kondisi=false } then goto lompat Proses1a Lompat: Proses2 Jika kondisi=true, urutan pelaksanaan : Proses1 Proses1a Proses2 Jika kondisi=false, urutan pelaksanaan : Proses1 Proses2 Analisa :
  • 21. Lanjutan menyembunykan goto Kondisi Proses 1b IF-THEN-ELSE true false Proses 1 Proses 2 Proses1 If {kondisi=true } then Proses1b else proses1a end if Proses2 Proses1 If {kondisi=true } then goto lompat1 else goto lompat2 Lompat1: Proses1b goto lompat3 Lompat2: Proses1a Lompat3: Proses2 Jika kondisi=true, urutan pelaksanaan : Proses1 Proses1b Proses2 Jika kondisi=false, urutan pelaksanaan : Proses1 Proses1a Proses2 Analisa : Proses 1a
  • 22. Lanjutan menyembunykan goto Kondisi1 Proses 2a IF-THEN-ELSE-IF true false Proses 1 Proses 2d Proses1 If {kondisi1=true } then Proses2a else if {kondisi2=true } then Proses2b else if {kondisi3=true } then Proses2c else Proses2d end if Proses3 Proses1 If {kondisi1=true } then goto lompat1 If {kondisi2=true } then goto lompat2 If {kondisi3=true } then goto lompat3 Goto lompat4 Lompat1: Proses2a goto habis Lompat2: Proses2b goto habis Lompat3: Proses2c goto habis Lompat4: proses2d Habis: proses3 Kondisi2 Kondisi3 Proses 2b Proses 2c Proses 3 Proses1 Case of var Kondisi1: Proses2a Kondisi2: Proses2b Kondisi3: Proses2c else Proses2d end case Proses3
  • 23. Lanjutan menyembunykan goto Looping : FOR I=1 Ulang : Proses1 Proses2 I=I+1 If I<=5 then goto Ulang Proses3 For I=1 to 5 Proses 1 Proses 2 Next I Proses 3 Proses1 Proses2 FOR I=1 to 5 Proses3
  • 24. Lanjutan menyembunykan goto Looping : WHILE Ulang : If {kondisi=true} then Proses1 Proses2 goto Ulang Proses3 While {kondisi=true} Proses 1 Proses 2 Wend Proses 3 While {kondisi} Proses1 Proses2 Proses3
  • 25. Lanjutan menyembunykan goto Looping : UNTIL Ulang : Proses1 Proses2 If {kondisi=true} then goto Ulang Proses3 do Proses 1 Proses 2 Loop Until {kondisi=true} Proses 3 Proses1 Proses1 Until {kondisi} Proses3
  • 26. Contoh flow chart dengan kontrol lengkap : C=2 C=C=1 C>12 end start
  • 27.
  • 28.
  • 29. Tabel Perbandingan Bahasa Pemrograman (Berdasarkan kriteria pemrograman terstruktur) 4=Baik sekali 3=Baik 2=Cukup 1=Kurang TOTAL Kelengkapan pesan (Syntex error, Compile error, Run-time error) Modular external (file kode terpisah) Fungsi-fungsi built-in (string, matematik, grafis, …) Komentar banyak baris Komentar di tengah baris Pointer Set, enumerate, array, record, file Ketegasan susunan deklarasi FOR UNTIL IF-THEN-ELSEIF IF-THEN-ELSE CASE WHILE Ketegasan penggunaan simbol (case sensitif – non case sensitif) Kemudahan memahami pesan kesalahan Modular internal (procedure, function) Operator aritmatik (+,-,*,/,^), operator relasi (<, <=, >, >=, <>),operator logika (AND, OR, NOT),assignment (=) Komentar 1 baris Type dasar (integer, real,char, string, boolean) IF-THEN Kelengkapan simbol untuk penulisan kode Kelengkapan deklarasi elemen program Sub kriteria Fasilitas debugging, mudah dan jelas Fasilitas modular (baik internal maupun eksternal); lengkap Fasilitas instruksi/operasi yang tersedia Fasilitas pemberian komentar; lengkap Fasilitas menyatakan berbagai type data Statemen untuk kebutuhan Selection dan Looping; lengkap Fasilitas penulisan kode program; jelas dan tegas Struktur programnya; jelas dan tegas Foxpro C Pascal Basic Bahasa Pemrograman Kriteria
  • 30.
  • 31. Metode Perancangan Top-down Sub Masalah A Sub Masalah B Sub Masalah C Masalah Besar Sub Masalah A1 Sub Masalah A2 B A C A1 A2 Masalah utama Strategi umum dalam penyelesaian masalah besar; kompleks; rumit
  • 32. Contoh Top-down : Mahasiswa Dosen Perkuliahan Sistem Informasi Akademis Entry data Hapus data Laporan data Entry data Hapus data Laporan data Entry data Hapus data Laporan data
  • 33.
  • 34. Diagram Chart Nassi-Schneiderman Statemen1 Statemen2 Stateme3 if ya tdk proses1 if ya tdk proses1 proses2 While kondisi proses2 proses2 Until kondisi Mulai Masukkan Nilai koefisien A Masukkan Nilai koefisien B Masukkan Nilai Koefisien C D = B*B-4*A*C D<0 Imajiner Real sama Real berbeda D=0 ya tdk ya tdk Contoh :
  • 35.
  • 36. Konversi flow chart ini ke bahasa pemrograman : a. Basic atau foxpro b. Pascal atau C C=2, M=3 C=C+1 C>12 C>M For I=M to C Next I M=M+1 (I*C)>M I > M C<=M C=M+1 M=C+1 P=C+M M=P+2 M=C+5 C=C+M end start C=C-M T F C=C*M Cetak C Cetak M F T F F T F T C = 37 M = 25