22
Topik 2 Konsep Dasar Algoritma Algoritma & Struktur Data PS. Manajemen Informatika

Topik 2 Konsep Dasar Algoritma

Embed Size (px)

DESCRIPTION

Algoritma dan Struktur Data

Citation preview

Page 1: Topik 2 Konsep Dasar Algoritma

Topik 2Konsep Dasar Algoritma

Algoritma & Struktur Data

PS. Manajemen Informatika

Page 2: Topik 2 Konsep Dasar Algoritma

Sub Topik

1. Definisi Algoritma

2. Ciri-Ciri Algoritma

3. Notasi Algoritma

4. English Structure

5. Flowchart Nassi-Schneiderman

6. Flowchart Nazi

7. Pseudocode

Page 3: Topik 2 Konsep Dasar Algoritma

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

Page 4: Topik 2 Konsep Dasar Algoritma

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)

Page 5: Topik 2 Konsep Dasar Algoritma

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

Page 6: Topik 2 Konsep Dasar Algoritma

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

Page 7: Topik 2 Konsep Dasar Algoritma

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)

Page 8: Topik 2 Konsep Dasar Algoritma

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

Page 9: Topik 2 Konsep Dasar Algoritma
Page 10: Topik 2 Konsep Dasar Algoritma

2. Program Flowchart• Menggambarkan urutan logika dari suatu

prosedur pemecahan masalah• Ada dua metode :

a. Conceptual Flowchartb. Detail Flowchart

Page 11: Topik 2 Konsep Dasar Algoritma
Page 12: Topik 2 Konsep Dasar Algoritma

Flowchart Nassi-Schneiderman

Flowchart terstruktur yang tidak menggunakan anak panah sebagai penunjuk proses

Ada tiga macam struktur program yaitu :

1. Sequence Control2. Looping Control3. Selection Control

Page 13: Topik 2 Konsep Dasar Algoritma

Selection Control

Sequence Control Looping Control

Page 14: Topik 2 Konsep Dasar Algoritma

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 baris2. 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

Page 15: Topik 2 Konsep Dasar Algoritma

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

Page 16: Topik 2 Konsep Dasar Algoritma

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?”

Page 17: Topik 2 Konsep Dasar Algoritma

Flowchart :

Page 18: Topik 2 Konsep Dasar Algoritma

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 : namaOutput : Tulisan “Halo, apa kabar nama?”Proses :

1. Membaca nama yang dimasukkan user2. Cetak tulisan “Halo, apa kabar nama?”

Page 19: Topik 2 Konsep Dasar Algoritma

Flowchart :

Page 20: Topik 2 Konsep Dasar Algoritma

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

Page 21: Topik 2 Konsep Dasar Algoritma

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

Page 22: Topik 2 Konsep Dasar Algoritma

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.