topik 2 konsep dasar algoritma

Post on 17-Jun-2015

1.174 Views

Category:

Education

10 Downloads

Preview:

Click to see full reader

DESCRIPTION

Algoritma dan Struktur Data

TRANSCRIPT

Topik 2Konsep Dasar Algoritma

Algoritma & Struktur Data

PS. Manajemen Informatika

Sub Topik

1. Definisi Algoritma

2. Ciri-Ciri Algoritma

3. Notasi Algoritma

4. English Structure

5. Flowchart Nassi-Schneiderman

6. Flowchart Nazi

7. Pseudocode

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

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)

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

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

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)

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

2. Program Flowchart• Menggambarkan urutan logika dari suatu

prosedur pemecahan masalah• Ada dua metode :

a. Conceptual Flowchartb. Detail Flowchart

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

Selection Control

Sequence Control Looping Control

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

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

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

Flowchart :

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

Flowchart :

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

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

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.

top related