Professional Documents
Culture Documents
ALGORITMA
1.1 Definisi
Algoritma adalah uraian ringkas tentang urutan langkah penyelesaian
suatu masalah. Uraian merupakan aktifitas yang dapat dijelaskan dengan katakata menurut bahasa yang mudah dimengerti manusia, misalnya memakai
bahasa Indonesia. Ringkas artinya pemilihan kata & penulisannya harus ringkas,
tidak terlalu panjang, dan tidak ambiguitas (memiliki makna ganda).
Urutan merupakan kesinambungan langkah yang tidak dapat dibolak-balik
urutan pengerjaannya. Langkah merupakan aktifitas terkecil yang memiliki satu
tujuan kegiatan yang terinci. Masalah secara umum dapat didefinisikan sebagai
perbedaan antara keinginan dan realita. Semakin besar perbedaan yang terjadi
berarti semakin besar upaya untuk melakukan penyelesaian. Masalah-masalah
yang dapat diselesaikan dengan komputer pada dasarnya adalah semua masalah
yang secara logis manusia bisa menyelesaikannya dan tidak menyangkut
masalah persaan.
Asal mula kata algoritma adalah dari kata algorism dalam kamus
Webster tahun 1957 yang berarti proses menghitung dengan angka arab.
Algorism merupakan nama penulis buku Arab yang berjudul The book of
restoration and reduction. Kata algorism kemudian berubah menjadi kata
algoritm agar tidak diinterpretasikan dengan aritmatik. Akhirnya dalam bahasa
Indonesia kata algorithm diserap menjadi algoritma.
Menurut
Donald E. Knuth dalam buku The Art of Computer
Programming , algoritma mempunyai lima ciri yaitu;
1) Algoritma harus ada berhentinya setelah menyelesaikan sejumlah langkah.
2) Setiap langkah harus didefiniskan dengan tepat dan tidak mendua.
3) Algoritma memiliki masukan sebanyak 0 sampai n
4) Algoritma memiliki keluaran sebanyak 1 sampai n
5) Setiap langkah harus efektif (cepat dan hemat memory).
1.2 Kedudukan Algoritma
Algoritma merupakan inti ilmu informatika. Tujuan dari algoritma yaitu
membuat penyelesaian masalah secara cepat dan efisien. Dalam kehidupan
sehari-hari banyak hal yang dilakukan mengikuti konsep algoritma. Setiap
langkah pada algoritma akan diproses oleh pemroses yaitu manusia, mesin,
processor, komputer, dll.
Jurusan Teknik Informatika Untag Surabaya
Algoritma Pemrograman
Algoritma Pemrograman
Algoritma Pemrograman
Algoritma Pemrograman
3b Struktur REPEAT
Pada struktur repeat ini, perulangan dilakukan bukan sebanyak n kali,
tetapi diulangi sampai kondisi benar yaitu kondisi berhentinya. Dalam
contoh berikut, makan jeruk diulangi sampai jeruk yang dimakan
mencapai 10 buah. Kondisi untuk menyatakan perulangan bisa
bermacam-macam, misalnya sampai jeruk dalam piring habis.
Sebagai contoh : algoritma makan jeruk 10 buah
MAKAN_JERUK
1. mulai
2. jeruk yang dimakan = 0
3. ulangi
4.
ambil jeruk
5.
kupas kulitnya
6.
belah buahnya
7.
masukkan ke mulut
8.
jeruk yang dimakan bertambah satu
9. sampai jeruk yang dimakan =10
10.selesai
Dalam contoh tersebut jeruk yang dimakan sebanyak 10 buah, artinya
langkah no 4,5,6,7,8 dikerjakan sebanyak 10 kali.
Berikut adalah contoh lain, jika jumlah jeruk dalam piring tidak tahu tetapi
disuruh menghabiskannya, algoritmanya adalah sebagai berikut;
MAKAN_JERUK
1. mulai
2. ulangi
3.
ambil jeruk
4.
kupas kulitnya
5.
belah buahnya
6.
masukkan ke mulut
7.
jeruk yang ada di piring dikurangi satu
8. sampai jeruk yang ada di piring = 0
9. selesai
Pada contoh tersebut berapa jeruk yang dimakan? Jawabnya bisa 12, bisa
5, bisa 20, bisa 0 tergantung jumlah jeruk didalam piring. Artinya pada
logika ini jumlah perulangan tidak bisa ditentukan.
Algoritma Pemrograman
3c Struktur WHILE
Pada struktur while ini, perulangan dilakukan bukan sebanyak n kali,
tetapi diulangi selama kondisi benar yaitu kondisi pengulangannya.
Dalam contoh berikut, makan jeruk diulangi selama jeruk yang dimakan
belum mencapai 10 buah. Kondisi untuk menyatakan perulangan bisa
bermacam-macam, misalnya selama jeruk dalam piring belum habis,
berapa jeruk yang dimakan, belum tentu sepuluh, yang penting selama
jeruk dalam piring belum habis.
Sebagai contoh : algoritma makan jeruk 10 buah
MAKAN_JERUK
1. mulai
2. jeruk yang dimakan = 0
3. ulangi selama jeruk yang dimakan 10
4.
ambil jeruk
5.
kupas kulitnya
6.
belah buahnya
7.
masukkan ke mulut
8.
jeruk yang dimakan bertambah satu
9. selesai
Pada contoh tersebut jeruk yang dimakan sebanyak 10 buah, artinya
langkah 4,5,6,7,8 dikerjakan sebanyak 10 kali. Perhatikan perbedaan
kondisi yang digunakan antara struktur repeat dan while.
Berikut adalah contoh lain, jika jumlah jeruk dalam piring tidak tahu tetapi
disuruh menghabiskannya, algoritmanya adalah sebagai berikut;
MAKAN_JERUK
1. mulai
2. ulangi selama jeruk yang ada di piring >0
3.
ambil jeruk
4.
kupas kulitnya
5.
belah buahnya
6.
masukkan ke mulut
7.
jeruk yang ada di piring berkurang satu
8. selesai
Coba renungkan perbedaan perulangan antara repeat dan while dari
contoh makan jeruk dalam piring jika kondisinya diubah sampai jeruk dalam
piring habis. Bagaimana jika sejak awal jeruk dalam piring sudah habis. Beri
kesimpulannya.
Algoritma Pemrograman
1.5 Evaluasi
Untuk mengevalusi pemahaman tentang algoritma, berikut diberikan
beberapa pertanyaan dan pernyataan sebagai berikut;
1. Apakah algorima dapat ditulis dengan bahasa sembarang?
[B/S]
2. Urutan langkah dalam algorima boleh dibolak-balik?
[B/S]
3. Algoritma boleh tidak memiliki output
[B/S]
4. Algoritma boleh tidak memiliki input
[B/S]
5. Algoritma boleh memiliki inputnya banyak outputnya sedikit
[B/S]
6. Algoritma boleh memiliki inputnya sedikit outputnya banyak [B/S]
7. Algoritma boleh melakukan perulangan sampai tak terhingga [B/S]
8. Algoritma bercabang, cabangnya boleh berhenti
[B/S]
9. Struktur while berhenti jika kondisinya benar
[B/S]
10. Struktur repeat berhenti jika kondisinya benar
[B/S]
1.6 Soal Latihan
Buat algoritma untuk menyelesaikan masalah-masalah berikut;
a) Menggosok gigi
b) Membersihkan busi sepeda motor
c) Berangkat kuliah pagi hari
d) Menghitung luas empat persegi panjang
e) Menghitung luas segitiga
f) Mencari akar-akar persamaan kuadrat dengan rumus ABC
g) Memilah jeruk kecil, sedang, besar ke masing-masing keranjang
1.7 Tugas Rumah
Buat algoritma untuk menyelesaikan masalah berikut, (algoritmanya bisa
diberlakukan secara umum, misal penambahan sampai 2000 kali);
a) B1 = 1+1+1+1+1+1+1+1+1+1
b) B2 = 3+3+3+3+3+3+3+3+3+3
c) B3 = 1+2+3+4+5+6+7+8+9+10
d) Menarik uang secara tunai melalui ATM
Permen karet dibuat ada rasa manis, agak asam,
ada sensasi segarnya, dan lain-lain.
Bagaimana rasa permen karet sebenarnya?
Inilah kunci jawabanya jika anda belajar algoritma