ALGORITMA & PEMROGRAMAN 2
POKOK BAHASAN - 1 ALGORITMA & PEMROGRAMAN
Oleh : NAZARUDDIN AHMAD, S.T, M.T
Design By mytemplate 2013
1. Konsep Dasar Algoritma • Apa itu Algoritma ? – Urutan langkah-langkah untuk memecahkan masalah – Kamus Besar Bahasa Indonesia: Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah • Algoritma dibutuhkan untuk memerintah komputer mengambil langkah-langkah tertentu dalam menyelesaikan masalah
2
Penulisan Algoritma • Dalam bahasa natural (Bahasa Indonesia, Bahasa Inggris dan bahasa manusia lainnya) - Tapi sering membingungkan (ambiguous) • Menggunakan flow chart (diagram alir) - Bagus secara visual akan tetapi repot kalau algoritmanya panjang. • Menggunakan pseudo-code - Sudah lebih dekat ke bahasa pemrograman, namun sulit dimengerti oleh orang yang tidak mengerti pemrograman.
3
Perbedaan Algoritma dan Program • Algoritma ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. • Program merupakan :
perwujudan atau implementasi teknis Algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. 4
Tahapan Pelaksanaan Algoritma oleh Komputer
5
Notasi Algoritmik • Notasi algoritmik merupakan standard yang dipakai dalam menuliskan teks algoritma. • Notasi algoritmik bukan bahasa pemrograman. • Notasi algoritmik ini lebih berorientasi kepada detail design dibandingkan coding. • Notasi algoritmik ini dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
6
Notasi Algoritmik Dapat dituliskan dalam bentuk : Algoritma
Flowchart Pseudo-code
7
Notasi Algoritmik : Algoritma
8
Notasi Algoritmik : Flowchart
9
Notasi Algoritmik : Pseudo-code
10
2. Konsep Dasar Pemrograman • Komputer merupakan alat bantu penyelesaian masalah di berbagai bidang : Pendidikan, Perbankan, Industri, Penerbangan, Kedokteran, Permainan, dll. Program adalah : urutan atau kumpulan instruksi (perintah) tertulis yang dimasukkan ke dalam komputer untuk menyelesaikan masalah. Pemrograman adalah :
pengerjaan penulisan instruksi oleh programmer untuk menyelesaikan suatu masalah
11
Tahapan Penyelesaian Masalah Oleh Komputer
Masalah
Program
Komputer
Solusi / Hasil
12
Bahasa Pemrograman Program harus dibuat dalam bahasa yang dimengerti oleh komputer yang disebut bahasa pemrograman agar instruksi yang ditulis oleh programmer dapat dilaksanakan oleh komputer.
13
Bahasa Pemrograman Bahasa Pemrograman
Bahasa Mesin (Mnemonic Code)
0 dan 1
Bahasa Assembly
Bahasa Tingkat Tinggi
ADD, MUL, SUB
Pascal, Basic, C/C++, Java
14
Bahasa Pemrograman Bahasa Pemrograman
Translator Interpreter
Compiler
15
Bahasa Pemrograman Belajar memprogram Belajar tentang strategi, metodologi, dan sistematika pemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami. Sifat : Pemahaman persoalan, analisis Titik berat : Designing Program
16
Bahasa Pemrograman Belajar bahasa pemrograman Belajar memakai suatu bahasa, aturan tata bahasanya, instruksi-instruksinya, tata cara pangoperasian compiler-nya untuk membuat program yang ditulis dalam bahasa itu saja. Sifat : Keterampilan Titik berat : Coding Program
17
Langkah-langkah Pemrograman Komputer Mendefenisikan Masalah
Menentukan Solusi
Memilih Algoritma
Menulis Dokumentasi
Menguji Program
Menulis Program
Merawat Program 18
Contoh Program C++ Kode Program :
Hasil Program
19
Contoh Program Pascal Kode Program :
Hasil Program
20
Pemrograman Prosedural • Algoritma berisi urutan langkah-langkah penyelesaian masalah. • Langkah-langkah di dalam algoritma menyatakan proses yang prosedural
Prosedur : • Tahap-tahap kegiatan untuk menyelesaikan suatu aktifitas. • Metode langkah demi langkahsecara eksak dalam memecahkan suatu masalah
21
Pemrograman Berorientasi Objek • Data dan instruksi dibungkus (encapsulation) menjadi satu. • Kesatuan ini disebut Kelas (class) • Inisialisasi kelas pada saat run-time disebut Objek (object). Objek
Jodie
Kelas
Daria
Jane
wanita
Brittany
22
ALGORITMA & PEMROGRAMAN 2
DISKUSI
Design By mytemplate 2013
Contoh Kasus 1: Misalkan ada dua ember atau bejana yang berisi air berwarna, sebut saja ember A dan ember B. Ember A berisi air yang berwarna merah dan ember B berisi air berwarna biru. Volume air di dalam kedua ember sama. Bagaimana mempertukarkan isi kedua ember itu sedemikian sehingga nantinya ember A akan berisi air berwarna biru dan ember B berisi air berwarna merah. Keadaan Awal : Ember A
Ember B
Ember A
Ember B
Keadaan Akhir :
24
Contoh Kasus 2: (water jug problem) Misalkan anda mempunyai dua buah ember, masing-masing bervolume 5-liter dan 3-liter. Anda diminta mendapatkan air (dari sebuah danau) sebanyak 4-liter dengan menggunakan bantuan hanya kedua ember tersebut. Terserah bagaimana caranya. Anda boleh memindahkan air dari satu ember ke ember lain, membuang seluruh air dari ember, dan sebagainya. Bagaimana Algoritmanya ?
5 Liter
3 Liter
25
Penyelesaian Kasus 2:
26