1. Topik 2
Konsep Dasar Algoritma
Algoritma & Struktur Data
PS. Manajemen Informatika
2. Sub Topik
1. Definisi Algoritma
2. Ciri-Ciri Algoritma
3. Notasi Algoritma
4. English Structure
5. Flowchart Nassi-Schneiderman
6. Flowchart Nazi
7. Pseudocode
3. Tujuan
Tujuan Instruksional Umum :
Mahasiswa diharapkan mampu menyajikan
permasalahan ke dalam notasi algoritma
Tujuan Instruksional Khusus :
Mahasiswa memahami definisi dan ciri-ciri
algoritma
Mahasiswa mampu menggunakan notasi algoritma
4. Definisi Algoritma
Algoritma berasal dari kata algoris dan ritmis
Pertama kali diungkapkan oleh Abu Ja’far Mohammed ibn
Musa al Khowarizmi (825 M) dalam buku Al-Jabr Wa-al
Muqabla
Definisi algoritma :
• Suatu metode khusus yang tepat dan terdiri dari
serangkaian langkah yang terstruktur dan dituliskan
secara sistematis, yang akan dikerjakan untuk
menyelesaikan suatu masalah dengan bantuan komputer
(Budi Sutedjo, 2000)
• Urutan logis langkah-langkah penyelesaian masalah
(Rinaldi Munir, 2007)
5. Ciri-Ciri Algoritma
Algoritma harus berhenti setelah mengerjakan sejumlah
langkah terbatas
Setiap langkah harus didefinisikan dengan tepat dan tidak
berarti-dua (ambiguous)
Algoritma memiliki nol atau lebih masukan (input)
Algoritma mempunyai nol atau lebih keluaran (output)
Algoritma harus sederhana
6. Notasi Algoritma
Notasi algoritma dibuat independen dari spesifikasi bahasa
pemrograman dan komputer yang mengeksekusinya
Notasi algoritma dapat diterjemahkan ke dalam berbagai
bahasa pemrograman
Ada beberapa notasi algoritma :
• Notasi I : menyatakan langkah-langkah algoritma
dengan untaian kalimat deskriptif (english structure)
• Notasi II : menggunakan diagram alir (flowchart)
• Notasi III : menggunakan pseudocode
7. English Structure
Basisnya adalah bahasa Inggris, tetapi bisa juga menggunakan
bahasa Indonesia
Untuk menggambarkan suatu algoritma yang akan
dikomunikasikan kepada pemakai sistem
Gaya penulisannya :
• Common Style (menggunakan huruf besar di awal dan
selanjutnya huruf kecil semua)
• Capitalized Common Style (menggunakan huruf besar semua)
• Outline Common Style (menggunakan nomor urut)
• Narative Style (berbentuk uraian)
• Gaya lain (tiap kata kunci ditulis dengan huruf besar
semua)
8. Flowchart
Metode untuk menggambarkan tahap-tahap pemecahan
masalah dengan merepresentasikan simbol-simbol tertentu
yang mudah dimengerti, mudah digunakan dan standar
Tujuannya untuk menggambarkan suatu tahapan
penyelesaian masalah secara sederhana, terurai, rapi dan jelas
dengan menggunakan simbol-simbol standar
Ada dua jenis :
1. System Flowchart
• Menggambarkan suatu sistem peralatan komputer
yang digunakan dalam proses pengolahan data serta
hubungan antar peralatan tersebut
9.
10. 2. Program Flowchart
• Menggambarkan urutan logika dari suatu prosedur
pemecahan masalah
• Ada dua metode :
a. Conceptual Flowchart
b. Detail Flowchart
11.
12. Flowchart Nassi-Schneiderman
Flowchart terstruktur yang tidak menggunakan anak panah
sebagai penunjuk proses
Ada tiga macam struktur program yaitu :
1. Sequence Control
2. Looping Control
3. Selection Control
14. Pseudocode
Menggambarkan algoritma dengan menggunakan kode yang
mirip dengan kode pemrograman yang sebenarnya
Berbasis bahasa pemrograman seperti BASIC, PASCAL atau
C, sehingga lebih tepat digunakan untuk menggambarkan
algoritma yang akan dikomunikasikan kepada programmer
Aturan penulisan pseudocode :
1. Satu pseudocode satu baris
2. Pisahkan modul-modul atau kelompok pseudocode
dengan memberikan spasi beberapa baris untuk
mempermudah pembacaan
3. Psedocode ditulis dengan huruf kapital, sedangkan
komentar atau variabel dalam huruf kecil
15. 4. Berikanlah tabulasi yang berbeda untuk penulisan
pseudocode-pseudocode yang berada dalam kalang
(loop) atau struktur kondisional
5. Lakukan pembatasan jumlah baris pseudocode setiap
modulnya, misalnya 50 – 75 baris pseudocode per
modul, sehingga tidak terlalu panjang
16. Contoh Soal
Kasus 1:
Buatlah algoritma English Structure dan flowchart
untuk mencetak tulisan “Halo, apa kabar?”
English Structure :
Masalah : Mencetak tulisan “Halo, apa kabar?”
Input : -
Output : Tulisan “Halo, apa kabar?”
Proses :
1. Cetak tulisan “Halo, apa kabar?”
18. Contoh Soal
Kasus 2:
Buatlah algoritma English Structure dan flowchart untuk
mencetak tulisan “Halo, apa kabar Budi?”, dimana nama Budi
bisa diganti dengan nama siapa saja karena merupakan
masukan dari user.
English Structure :
Masalah : Mencetak tulisan “Halo, apa kabar nama?”
Input : nama
Output : Tulisan “Halo, apa kabar nama?”
Proses :
1. Membaca nama yang dimasukkan user
2. Cetak tulisan “Halo, apa kabar nama?”
20. Rangkuman
Algoritma : logika berpikir sistematis & terstruktur
Algoritma tidak tergantung pada bahasa pemrograman
English Structure : narasi algoritma bahasa alami
Flowchart : bagan alir algoritma
Pseudocode : struktur algoritma menyerupai bahasa
pemrograman
21. Latihan Soal
Kasus 1:
Buatlah algoritma English Structure dan flowchart
untuk mencetak tulisan
“Selamat Belajar?”
Kasus 2:
Buatlah algoritma English Structure dan flowchart
untuk mencetak tulisan
“Nama, Selamat Belajar?”
dimana nama merupakan masukan dari user
22. REFERENSI
1. Andri Kristanto. 2003. “Struktur Data dengan C++”. Yogyakarta:
Graha Ilmu.
2. Budi Sutedjo, Michael A.N. 2000. “Algoritma dan Teknik
Pemrograman”. Yogyakarta: ANDI OFFSET.
3. Fathul Wahid. 2004. “Dasar-Dasar Algoritma dan Pemrograman”.
Yogyakarta: ANDI OFFSET.
4. Heri Sismoro, Kusrini Iskandar. 2004. ”Struktur Data dan
Pemrograman dengan Pascal”. Yogyakarta:ANDI OFFSET.
5. Insap Santosa. 2004. ”Struktur Data Menggunakan Turbo Pascal
6.0”. Yogyakarta: ANDI OFFSET.
6. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma & Pemrograman
Dalam Bahasa Pascal dan C Buku 1”. Bandung: Informatika.
7. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma & Pemrograman
Dalam Bahasa Pascal dan C Buku 2”. Bandung: Informatika.
8. Rosa A.S., Shalahuddin M. 2010. ”Modul Pembelajaran Struktur
Data”. Bandung: Modula.
9. Teddy Marcus Zakaria, Agus Prijono. 2006. ”Konsep dan
Implementasi Struktur Data”. Bandung: INFORMATIKA.