algoritma temu 1 - pengertian algoritma
DESCRIPTION
pengertian algoritmaTRANSCRIPT
ALGORITMA 1ALGORITMA 1
S e n n a H e n d r i a [email protected]
http://senna-hendrian.blogspot.com085221208380 (HP, WhatsApp, LINE)
57FC7BBE (pin)
PROGRAM STUDI TEKNIK INFORMATIKA
UNIVERSITAS INDRAPRASTA
SENNA HENDRIAN SDN TARUNA KARYA IV, BANDUNG (1987). SMP YAS, BANDUNG (1993). SMK MERDEKA, BANDUNG (1996). TEKNIK INFORMATIKA - STMIK BANDUNG (2000). TEKNIK INFORMATIKA – STMIK JABAR (2005). TEKNIK INFORMATIKA – UNIV. PELITA BANGSA
(2010). MAGISTER ILMU KOMPUTER – STMIK NUSA
MANDIRI (2014). CONSULTANT – ANALYZE OF FUNDAMENTALS
PROBLEM SOLVING (DIKLATPIM Tk. IV, Tk. III DAN Tk. II) – KANTOR DIKLAT KABUPATEN BANDUNG, PKP2AI LEMBAGA ADMINISTRASI NEGARA, BADAN DIKLAT PROVINSI JABAR (2007 - 2013).
COORDINATOR NETWORKING - BOARDING SCHOOL OF KRIDA NUSANTARA (2013-2014).
APA ITU ALGORITMA? Kata Algoritma diambil dari nama ilmuan
muslim Abu Ja’far Muhammad bin Musa Al-Kharizmi (780-846 M)
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 masalah
APA ITU ALGORITMA? Jantung ilmu komputer atau informatika Algoritma tidak selalu identik dengan
ilmu komputer saja Dalam kehidupan sehari-hari banyak
terdapat proses yang digambarkan dalam suatu algoritmaContoh : resep masakan (membuat kue atau makanan), membuat pakaian (pola pakaian), ,merakit mobil (panduan merakit), dll.
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
CONTOH Buat sebuah algoritma untuk memilih
bilangan terbesar dari 3 buah bilangan Nantinya ini bisa digeneralisir menjadi n buah
bilangan
Requirement (pernyataan yang mengidentifikasikan kebutuhan yang penting dalam sistem yang didalamnya mencakup aspek kebenaran, realistis dan terukur)
ALGORITMA DALAM BAHASA NATURAL
1. Ambil bilangan pertama dan set maks sama dengan bilangan pertama
2. Ambil bilangan kedua dan bandingkan dengan maks
3. Apabila bilangan kedua lebih besar dari maks, set maks sama dengan bilangan kedua
4. Ambil bilangan 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
ALGORITMA DENGAN FLOWCHART
Maks = bilangan pertama
Maks < bilangan kedua
Maks = bilangan kedua
Maks < bilangan ketiga
Maks = bilangan ketiga
Ya
Ya
Selesai
Mulai
Tidak
Tidak
ALGORITMA DENGAN PSEUDO-CODEmaks ← bilangan pertamaif (maks < bilangan kedua)maks ← bilangan kedua
if (maks < bilangan ketiga)maks ← bilangan ketiga
CIRI-CIRI ALGORITMA YANG BAIKa. Tepat sasaran : memenuhi spesifikasi
pekerjaan dan bekerja sesuai tujuanb. Flexible dan portable:
• Flexible untuk dikembangkan lebih lanjut• Portable untuk digunakan pada berbagai sistem
dan mesin
c. Bersih dari kesalahan sistem ataupun logik
d. Efektif : setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.
e. Murah
CIRI-CIRI ALGORITMA YANG BAIKf. Didokumentasikan dengan baik untuk
pengoperasian, pemeliharaan dan pengembangan
g. Algoritma pemberian (description) pelaksanaan suatu proses
h. Tidak ambiguous : tidak bermakna ganda
i. Harus berhenti setelah mengerjakan sejumlah langkah terbatas.
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 efektif