CONTOH DAN PENGENALAN ALGORITMA



PENGENALAN ALGORITMA
DEFINISI ALGORITMA
·         Algoritma adalah urutan langkah-langkah logis yang disusun secara sistematis untuk menyelesaikan suatu masalah.
·         Kata logis (logika) merupakan kunci dalam algoritma.
·         Langkah-langkah dalam algoritma harus logis, hasil algoritma harus dapat ditentukan bernilai benar atau salah.
·         Langkah yang salah akan memberikan hasil yang salah.

HISTORI
Pertama kali diungkapkan oleh Abu Ja'far Muhammad Ibnu Musa Al-Kwarizmi, penulis buku “Aljabar Wal Muqabala” (Abad IX)‏
Menjelaskan langkah-langkah menyelesaikan persoalan Aritmatika(Aljabar)‏
Kata “Algoritma”“Al-Kwarizmi”Algorism”
                ”Algorithm”
CIRI-CIRI ALGORITMA YANG BAIK
·         Memiliki logika perhitungan/metode yang tepat dalam memecahkan masalah
·         Menghasilkan output yang tepat dan benar dalam waktu yang singkat
·         Ditulis dengan bahasa yang standar secara sistematis dan rapi sehingga tidak menimbulkan arti ganda
·         Ditulis dengan format yang mudah dipahami dan diimplementasikan ke dalam bahasa pemrograman
·         Semua operasi yang dibutuhkan terdefinisi dengan jelas
·         Semua proses harus selalu berakhir setelah sejumlah langkah dilakukan
ALGORITMA DALAM KEHIDUPAN
·         Membuat kopi
·         Membuat mie instant
·         Membuat resep makanan
·         Mengirim surat melalui pos
·         Mencuci piring
·         Mengganti ban mobil yang pecah
·         Menentukan keputusan pada saat lampu merah dijalan raya
·         berwudlu
·         Dll.
CONTOH ALGORITMA SEDERHANA
Sebagai contoh, menukarkan isi dua buah gelas.
Gelas A berisi cairan biru dan gelas B berisi cairan merah.
Tukarkanlah isi kedua gelas tersebut
Algoritma 1 :
Tuangkan isi gelas A ke gelas B
Tuangkan isi gelas B ke gelas A
Jawaban pada Algoritma 1 diatas tidak menghasilkan pertukaran yang benar.
Cairan pada kedua gelas bisa saja tercampur.
Algoritma 2 :
Tuangkan isi gelas A ke gelas C
Tuangkan isi gelas B ke gelas A
Tuangkan isi gelas C ke gelas B
Jawaban pada Algoritma 2 sudah tepat.
Dengan menggunakan bantuan sebuah gelas C, maka kedua isi gelas dapat ditukarkan tanpa tercampur.
BAHASA PEMROGRAMAN
·         Agar suatu algoritma dapat dilaksanakan oleh komputer, maka notasi algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program.
·         Jadi program merupakan implementasi teknis algoritma yang ditulis dengan bahasa pemrograman tertentu.
·         Contoh bahasa pemrograman misalnya : Pascal, C++, Delphi, Basic dan lainnya.
·         Notasi algoritma nantinya dapat dituangkan ke dalam bahasa pemrograman apapun, dengan kata lain algoritma bersifat independen.
·         Belajar bahasa pemrograman tidak sama dengan belajar algoritma.
NOTASI ALGORITMA
·         Notasi algoritma umumnya dapat dibuat dalam tiga cara yaitu :
1.       Kalimat Deskriptif
2.       Flowchart
3.       Pseudo-code
·         Dalam belajar algoritma notasi yang umum digunakan adalah Flowchart dan Pseudo-code.
·         Flowchart dan Pseudo-code memiliki keunggulan tersendiri.
·         Menulis algoritma dengan Flowchart dan Pseudo-code biasanya dilakukan oleh programmer pemula (tahap belajar).
·         Programmer yang mahir umumnya langsung menuangkan algoritma dengan bahasa pemrograman tertentu.
·         Namun programmer mahir terkadang menggunakan Flowchart dan Pseudo-code untuk dokumentasi.
CONTOH KASUS
Buat sebuah algoritma untuk memilih bilangan terbesar dari 2 buah bilangan
NOTASI ALGORITMA DALAM KALIMAT DESKRIPTIF
·         Mulai
·         Masukkan bilangan pertama dan bilangan kedua
·         Bandingkan bilangan pertama dengan bilangan kedua
·         Apabila bilangan pertama lebih besar dari bilangan kedua, cetak bilangan pertama, jika tidak cetak bilangan kedua
·         Selesai
Atau
·         Mulai
·         Masukkan A dan B
·         Apakah A>B?
·         Bila ya, Cetak A. bila tidak cetak B
·         selesai
NOTASI ALGORITMA DENGAN FLOWCHART
NOTASI ALGORITMA DENGAN PSEUDO-CODE
if Bilangan pertama > bilangan kedua then
   Cetak bilangan pertama else
   Cetak bilangan kedua
CONTOH SOAL
Terdapat tiga buah cakram seperti pada gambar, dimana cakram yang lebih kecil berada lebih diatas. Buatlah algoritma untuk memindahkan cakram dari tempat A ke B dimana satu kali perpindahan hanya boleh satu cakram. Cakram yang lebih kecil harus selalu berada diatas cakram yang lebih besar.
1.       Pindahkan cakram A ke B
2.       Pindahkan cakram A ke C
3.       Pindahkan cakram B ke C
4.       Pindahkan cakram A ke B
5.       Pindahkan cakram C ke A
6.       Pindahkan cakram C ke B
7.       Pindahkan cakram A ke B

Comments