9.adp penyajian algoritma
TRANSCRIPT
![Page 1: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/1.jpg)
ALGORITMA & DASAR PEMROGRAMAN
Penyajian Algoritma
![Page 2: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/2.jpg)
Penyajian algoritma dapat disajikan dengan menggunakan dua teknik, yaitu dengan tulisan dan gambar
Penyajian algoritma dalam bentuk tulisan biasanya menggunakan metode English Structure dan Pseudocode, sedangkan penyajian algoritma dengan teknik gambar biasanya menggunakan metode Structure Chart, Hierarchy Plus Input-Process-Output, Flowchart, dan Nassi Schneiderman Chart.
Pengantar
![Page 3: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/3.jpg)
English Structure merupakan alat yang cukup efisien untuk menggambarkan suatu algoritma.
Basis dari English Structure adalah bahasa Inggris, tetapi juga dapat menggunakan bahas Indonesia.
Bahasa manusia digunakan sebagai dasar penggambaran suatu algoritma, oleh karena itu English Structure lebih tepat digunakan untuk menggambarkan suatu algoritma yang akan dikomunikasikan kepada pemakai sistem.
ENGLISH STRUCTURE & PSEUDOCODE
![Page 4: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/4.jpg)
Pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya.
Pseudocode berasal dari kata pseudo yang berarti imitasi atau mirip atau menyerupai, dan code yang berarti program.
Pseudocode ditulis berbasiskan bahasa pemrograman seperti BASIC, PASCAL, atau C, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan dikomunikasikan dengan programmer.
Pseudocode lebih rinci dari English Strucuture, misalnya dalam menyatakan tipe data yang digunakan.
PSEUDOCODE
![Page 5: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/5.jpg)
if(Nilai > 80) Output ‘A’ else if(Nilai > 60) Output ‘B’ else if(Nilai > 50) Output ‘C’ else if(Nilai > 30) Output ‘D’
CONTOH PSEUDOCODE
![Page 6: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/6.jpg)
Dalam penulisan English Structure dan Pseudocode juga dikenal struktur penulisan program seperti Sequence Structure, Selection Structure, dan Looping Structure.
PENULISANNYA
![Page 7: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/7.jpg)
Terdiri dari sebuah instruksi atau blok instruksi yang tidak mempunyai perulangan atau keputusan di dalamnya.
Contoh dalam Bahasa Indonesia (menghitung luas dan volume dari Balok):1. Masukkan panjang2. Masukkan lebar3. Masukkan tinggi4. Luas = (2*p*l)+(2*p*t)+(2*l*t)5. Volume = p*l*t6. Tampilkan Luas7. Tampilkan Volume
Contoh dengan Pseudocode
SEQUENCE STRUCTURE
![Page 8: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/8.jpg)
Contoh dengan Pseudocode PROGRAM BalokDEKLARASI Luas : real Volume : real panjang : integer lebar : integer tinggi : integerDESKRIPSI read(panjang, lebar,tinggi) Luas = (2*panjang*luas)+(2*panjang*tinggi)+(2*lebar*tinggi) Volume = p*l*t write(Luas) write(Volume)end
http://laviola-mennys.blogspot.com/2014/04/contoh-algoritma-flowchart-pseudocode.html
SEQUENCE STRUCTURE
![Page 9: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/9.jpg)
Merupakan struktur logika guna mengambil suatu keputusan. Struktur ini dapat menggunakan instruksi-seperti IF-THEN atau CASE
Contoh dalam Bahasa Indonesia (menghitung diskon pembelian):1. Inisialisasi variabel.2. Baca data nilai pembelian.3. Jika nilai pembelian lebih besar dari Rp. 100.000, maka
dikenakan diskon 10% dari nilai pembelian. Selain itu maka hanya dikenakan diskon 5% dari nilai pembelian.
4. Hitung total yaitu nilai pembelian dikurangi diskon.5. Tampil nilai pembelian, diskon, dan total pembelian.
Contoh dengan Pseudocode:
SELECTION STRUCTURE
![Page 10: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/10.jpg)
Contoh dengan Pseudocode PROGRAM Jual_BeliDEKLARASI Total : real bayar : integer diskon: realDESKRIPSI read(bayar) IF bayar > 100000 THEN
diskon = bayar*0,1 ELSE
diskon = bayar*0,05 end IF Total = bayar-diskon write(bayar) write(diskon) write(Total)end
http://virtual.parkland.edu/kcouch/CIS122/Week5/Psuedocode-Selection.htm
SELECTION STRUCTURE
![Page 11: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/11.jpg)
Struktur ini diterapkan pada situasi di mana suatu instruksi atau grup dari instruksi diproses berulangkali sampai kondisi yang diinginkan terpenuhi.
Pada struktur perulangan ini dapat digunakan instruksi FOR, DO-WHILE.
Contoh dalam Bahasa Indonesia (menampilkan kalimat “Bahasa C” sebanyak 5 kali):1. Inisialisasi variabel2. Tentukan nilai awal sama dengan 03. Untuk nilai lebih kecil dari nilai akhir 5 dimulai dari nilai
awal, ulangilah blok instruksi berikut ini:- Cetak kalimat “Bahasa C”- Tambah nilai dengan satu4. Selesai
LOOPING STRUCTURE
![Page 12: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/12.jpg)
Contoh dengan Pseudocode
PROGRAM Nampil_Lima_KaliDEKLARASI i : integerDESKRIPSI read(i) FOR i=0 DO write('Bahasa C') i++ i<5end
![Page 13: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/13.jpg)
Beberapa gaya penulisan pada English Structure:1. Common Style yaitu menggunakan huruf
besar di awal selanjutnya huruf kecil semua.2. Capitalized Common Style yaitu
menggunakan huruf besar semua3. Outline Common Style yaitu dengan
menggunakan nomor urut4. Narative Style yaitu berbentuk uraian5. Gaya lain yaitu tiap kata kunci ditulis dengan
huruf besar semua.
GAYA PENULISAN ENGLISH STRUCTURE
![Page 14: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/14.jpg)
Beberapa aturan penulisan Pseudocode:1. Satu pseudocode satu baris.2. Pisahkan modul-modul atau kelompok pseudocode
dengan memberikan spasi beberapa baris untuk mempermudah pembacaan.
3. Pseudocode ditulis dengan huruf kapital, sedangkan komentar atau variabel dalam huruf kecil.
4. Berikanlah tabulasi yang berbeda untuk penulisan pseudocode-pseudocode yang berada dalam loop-nya.
5. Lakukan pembatasan jumlah baris pseudocode setiap modulnya, misalnya 50 – 75 baris pseudocode per modul, sehingga tidak terlalu panjang.
ATURAN PENULISAN PSEUDOCODE
![Page 15: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/15.jpg)
Digunakan untuk mendefinisikan dan mengilustrasikan organisasi dari sistem secara berjenjang dalam bentuk modul dan submodul.
Structure chart juga menunjukkan hubungan elemen data dan elemen kontrol serta hubungan antarmodulnya sehingga structure chart dapat memberikan penjelasan yang lengkap tentang sistem dipandang dari elemen data, elemen kontrol, modul dan hubungan antarmodulnya.
STRUCTURE CHART
![Page 16: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/16.jpg)
Gambar Nama Keterangan
Module Simbol ini menunjukkan suatu modul
ConnectionSimbol ini digunakan untuk menghubungkan suatu modul dengan modul lainnya
Loop Simbol ini menunjukkan suatu perulangan di dalam modul
Decision Simbol ini menunjukkan suatu penyeleksian kondisi di dalam modul
Couple
Simbol ini menunjukkan suatu data/elemen yang dikirimkan dari satu modul ke modul lainnya. Anak panah dengan lingkaran yang kosong menunjukkan data yang dikirimkan, sedangkan anak panah dengan lingkaran padat menunjukkan elemen kontrol yang dikirimkan
SIMBOL DASAR STRUCTURE CHART
![Page 17: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/17.jpg)
Di samping simbol-simbol standar tersebut, pemrogram juga dapat menambahkan bentuk simbol lain asalkan pemrogram memberikan penjelasan tentang maksud dari simbol yang dibuat tersebut dalam bentuk kamus simbol. Namun demikian sebaiknya pemrogram menggunakan simbol-simbol standar untuk menggambarkan struktur sistem tersebut agar mudah dipahami oleh pemrogram lain.
STRUCTURE CHART
![Page 18: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/18.jpg)
Gambar Keterangan
Menunjukkan suatu modul dengan nama “Luas Persegi Panjang”
Modul A memanggil Modul B. Setelah proses dari modul B selesai, maka proses kembali ke modul A yang memanggilnya
STRUCTURE CHART
Luas Persegi Panjang
A
B
Contoh penggunaan simbol-simbol pada structure chart dalam menggambarkan struktur suatu sistem
![Page 19: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/19.jpg)
Gambar Keterangan
STRUCTURE CHART
![Page 20: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/20.jpg)
Structure Chart memiliki dua model penggambaran sistem, yaitu Transformed-Centered dan Transaction-Centered
MODEL STRUCTURE CHART
![Page 21: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/21.jpg)
Structure chart dengan model ini menggambarkan sistem dalam 3 cabang utama:1. Cabang Input yang merupakan cabang yang
akan menerima input dan menentukan status input untuk siap proses.
2. Cabang Proses yang merupakan cabang yang akan melakukan fungsi utama dari sistem, yaitu memproses input yang dikirim dari cabang input.
3. Cabang Output merupakan cabang yang akan memformat data menjadi output.
TRANSFORMED CENTERED
![Page 22: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/22.jpg)
TRANSACTION CENTERED
![Page 23: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/23.jpg)
Adalah bentuk penggambaran secara logika di mana suatu modul berada di dalam modul yang lainnya.
LEXICAL INCLUSION
![Page 24: 9.adp penyajian algoritma](https://reader035.vdocuments.mx/reader035/viewer/2022081418/55bdbc2fbb61eb2b118b471b/html5/thumbnails/24.jpg)
Biasa disingkat HIPO (Hierarchy Plus Input-Process-Output), merupakan alat dokumentasi program yang dikembangkan dan didukung oleh IBM. Tetapi kini HIPO juga telah digunakan sebagai alat bantu untuk merancang dan mendokumentasikan siklus pengembangan sistem.
HIERARCHY PLUS INPUT-PROCESS-OUTPUT