EL 2001 – Dasar Pemrograman
Budi Rahardjo
Teknik Elektro ITB - 2004
2004 EL 2001 - Algoritma v.1.2 2
Apa Itu Algoritma?
• Definisi
– 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 masalah2
2004 EL 2001 - Algoritma v.1.2 3
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
2004 EL 2001 - Algoritma v.1.2 4
Contoh
• Requirement
– Buat sebuah algoritma untuk memilih bilangan terbesar 
dari 3 buah bilangan
– Nantinya ini bisa digeneralisir menjadi n buah bilangan3
2004 EL 2001 - Algoritma v.1.2 5
Algoritma Dalam Bahasa Natural
1. Ambil bilangan pertama dan set maks sama dengan 
bilangan pertama
2. Ambil bilangan kedua dan bandingkan dengan maks
3. Apa bila bilangan kedua lebih besar dari maks, set maks
sama dengan bilangan kedua
4. Ambil blangan ketiga dan bandingan dengan maks
5. Apabila bilangan ketiga lebih besar dari maks, set maks
sama dengan bilangan ketiga
6. Variabel maks berisi bilangan terbesar. Tayangkan 
hasilnya
2004 EL 2001 - Algoritma v.1.2 6
Algoritma dengan Flowchart
Maks = bilangan pertama
Maks < 
bilangan kedua 
Maks = bilangan kedua
Maks < 
bilangan ket iga 
Maks = bilangan ketiga
Ya
Ya
Selesai
Mulai
Tidak
Tidak4
2004 EL 2001 - Algoritma v.1.2 7
Algoritma dengan pseudo-code
maks←bilangan pertama
if (maks < bilangan kedua)
maks←bilangan kedua
if (maks < bilangan ketiga)
maks←bilangan ketiga
2004 EL 2001 - Algoritma v.1.2 8
Aspek Penting dari Algoritma
1. Finiteness
• Algoritma harus berhenti after a finite number of steps
2. Definiteness
• Setiap langkah harus didefinisikan secara tepat, tidak boleh 
membingungkan (ambiguous)
3. Input
• Sebuah algoritma memiliki nol atau lebih input yang diberikan kepada 
algoritma sebelum dijalankan
4. Output
• Sebuah algoritma memiliki satu atau lebih output, yang biasanya bergantung 
kepada input
5. Effectiveness
• Setiap algoritma diharapkan miliki sifat efektif5
2004 EL 2001 - Algoritma v.1.2 9
Tugas
• Buat algoritma untuk
– Mengurutkan bilangan (sorting) untuk n buah data 
(misalnya data nilai mahasiswa)
– Tower of hanoi
– …
2004 EL 2001 - Algoritma v.1.2 10
Bahan Bacaan
• Donald Knuth, The Art Of Computer Programming, Volume 
1 / Fundamental Algorithms, 2nd edition, Addison Wesley
• Rinaldi Munir, Algoritma dan Pemrograman dalam Bahasa 
Pascal dan C, Penerbit Informatika Bandung
Rabu, 30 Desember 2009
Langganan:
Posting Komentar (Atom)
 




 
 
Tidak ada komentar:
Posting Komentar