Translate

Jumat, 10 Maret 2017

Review Algoritma


1.1       Konsep Algoritma

Dalam kehidupan sehari-hari banyak terdapat proses yang dinyatakan dalam suatu algoritma sesuai dengan definisinya.Algoritma adalah fondasi yang harus dikuasai oleh setiap mahasiswa yang ingin menyelesaikan masalah secara terstruktur,efektif dan efisien, teristimewa lagi bagi mahasiswa yang ingin menyusun program komputer untuk menyelesaikan suatu persoalan.Algoritma juga harus mengikuti suatu urutan aturan tertentu dan tidak boleh melompat-lompat.Algoritma seseorang dengan yang lain dapat berbeda-beda karena mempunyai alur pikir yang berbeda pula.Algoritma bisa berupa kalimat,gambar atau tabel tertentu.

Dalam menyelesaikan algoritma membutuhkan sebuah program untuk menginstruksikan komputer agar berjalan sesuai yang diinginkan penggunanya.Untuk membuat suatu program dibutuhkan beberapa langkah-langkah terlebih dahulu.Sebagai contoh bagaimana cara membuat resep makanan pasti ada langkah-langkah dalam menyelesaikan.

1.1.1    Definisi

1.      Teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara logis dan sistematis. 
2.      Suatu prosedur yang jelas untuk menyelesaikan suatu persoalan dengan menggunakan langkah-langkah tertentu dan terbatas jumlahnya.
3.      Susunan langkah yang pasti, yang bila diikuti maka akan mentransformasikan data input menjadi output yang berupa informasi.
4.      Definisi algoritma yaitu urutan logis tertentu untuk memecahkan suatu masalah (Microsoft Press Computer dan Internet Dictionary 1997,1998).
5.      Alur pemikiran dalam menyelesaikan suatu pekerjaan dituangkan secara tertulis.

1.1.2    Catatan Sejarah

            Kata algoritma berasal dari nama seorang Ilmuan Ahli matematika dan astronomi Persian bernama Abu Ja’far Muhammad Ibnu Musa al-Khawarizmi . Beliau juga penulis buku ”Aljabar wal muqabala”.Pada abad ke-18 istilah algoritma mulai berkembang mencakup semua prosedur atau urutan langkah jelas dan digunakan untuk menyelesaikan permasalahan.diperkirakan wafat pada tahun 850 an dan dianggap sebagai pencetus pertama algoritma karena pada buku tersebut dijelaskan langkah-langkah dalam menyelesaikan berbagai persoalan aritmatika (aljabar).Kemungkinan besar kata algoritma diambil dari namanya al-khawarizmi diubah menjadi algorism, selanjutnya menjadi algorithm.

1.1.3    Ciri Algoritma

            Menurut Donald E. Knuth penulis buku Algoritma abad XX, ciri-ciri algoritma antara lain :
1.      Algoritma mempunyai awal dan akhir, suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas. Dengan kata lain, suatu algoritma memiliki langah yang terbatas.
2.      Setiap langkah harus didefinisikan dengan tepat sehingga tidak memiliki arti ganda, tidak membingungkan (not ambiguous).
3.      Memiliki masukan (input) atau kondisi awal.
4.      Memiliki keluaran (output) atau kondisi akhir.
5.      Algoritma harus efektif, bila diikuti benar-benar maka akan menyelesaikan persoalan.

1.1.4    Sifat Algoritma

·   Input : Suatu algoritma mempunyai kondisi awal (input) sebelum dilaksanakan, bisa berupa nilai perubah yang diambil dari himpunan khusus.
·       Output : Algoritma akan mengubah kondisi awal (input) menjadi kondisi akhir (output), dimana nilai output diperoleh dari nilai input yang telah diproses melalui algoritma.
·     Definiteness : Langkah yang ditulis dalam algoritma terdefinisi jelas sehingga mudah dilaksanakan pengguna.
·   Finiteness : Suatu algoritma harus memberi output setelah sejumlah langkah terbatas jumlahnya dilakukan setiap input yang diberikan.
·      Effectiveness : Setiap langkah dalam algoritma bisa dilaksanakan dalam suatu selang waktu tertentu sehingga didapat solusi yang diinginkan.  
·         Generality : Langkah-langkah algoritma berlaku setiap himpunan input sesuai dengan persoalan yang diberikan, tidak hanya untuk himpunan tertentu.

1.1.5    Struktur Algoritma

            Agar penulisan algoritma lebih teratur, maka memerlukan struktur algoritma sebagai patokan, yaitu sebagai berikut :
1.      Bagian Kepala (Header) : Memuat nama algoritma serta informasi atau keterangan tentang algoritma yang ditulis.
2.      Bagian Deklarasi (Definisi Variable) : Memuat definisi nama variable, nama tetapan, nama prosedur nama fungsi, tipe data yang akan digunakan dalam algoritma.
3.      Bagian Deskripsi (Rincian Langkah) : Memuat langkah-langkah penyelesaian masalah, tetmasuk beberapa perintah seperti baca data, tampilkan, ulangi, yang mengubah data input menjadi output.

1.1.6    Langkah-langkah pembuatan program

Dalam mempelajari algoritma tentunya membutuhkan suatu program untuk menjalankan instruksi pada komputer.Program adalah deretan instruksi yang digunakan untuk mengendalikan komputer, sehingga  komputer dapat melakukan tindakan sesuai dengan yang dikehendaki pembuatnya.Terdapat beberapa langkah-langkah dalam pembuatan program antara lain :


1.      Mengidentifikasikan masalah

Pada langkah pertama ini masalah akan ditentukan terlebih dahulu, kemudian memecahkan apa saja permasalahan pada komputer.Kemudian baru ditentukan masukan dan keluarannya.

2.      Menentukan solusi

Setelah masalah didefinisikan dengan jelas,masukan dan keluaran apa yang diinginkan sudah jelas,cara berikutnya adalah mencari jalan bagaimana masalah tersebut bisa diselesaikan.
Apabila masalah terlalu komplek, biasanya harus membaginya kedalam beberapa modul kecil agar lebih mudah untuk diselesaikan.

3.      Memilih algoritma

Langkah selanjutnya merupakan langkah penting dalam pemrograman komputer,karena jika salah melakukan pemilihan algoritma akan mengakibatkan program error atau kinerja program yang tidak baik.Algoritma bisa dituliskan dalam bentuk kata-kata(english structure-Indonesia),pseudocode dan flowchart(bagan).

4.      Menulis Program

Pada langkah ini,akan dimulai penulisan kode program untuk memecahkan masalah.Agar komputer dapat membaca atau memahami program yang ditulis dengan bahasa pemrograman, maka dibutuhkan suatu penterjemah, yaitu interpreter atau compiler.

5.      Menguji program

Testing dan debuging mempunyai tujuan yang sama yaitu menghasilkan program yang benar.Testing adalah proses mengeksekusi program secara intensif untuk menemukan kesalahan.Debuging adalah saat menemukan kesalahan sampai kesalahan itu diperbaiki sehingga tidak ada kesalahan lagi.

6.      Menulis dokumentasi

Contoh dokumentasi sederhana adalah dengan menuliskan setiap baris program atau setiap beberapa baris program,dengan ditambahkan komentar yang menjelaskan dari suatu pernyataan.

7.      Merawat program

Langkah ini dilakukan setelah program selesai dibuat dan sudah digunakan oleh pengguna.Hal ini yang paling sering terjadi disini adalah munculnya bug yang sebelumnya tidak terdeteksi.Atau mungkin pengguna ingin tambahan suatu fasilitas baru.
Jadi pemeliharaan program berarti melakukan koreksi, adaptasi dan melengkapi fasilitas guna mengantisipasi kebutuhan masa depan.

Contoh Penulisan Algoritma

1. Kalimat Deskriptif

·         Menggunakan untaian kalimat untuk menjelaskan langkah-langkah.
            Contoh :

PROGRAM GanjilGenap
Diberikan sebuah bilangan bulat positif X
untuk dicek apakah termasuk ganjil atau genap

ALGORITMA
  1. Jika X habis dibagi 2 maka tulis “Genap”,
 jika tidak maka tulis “Ganjil”


·         Menggunakan simbol-simbol untuk menggambarkan aliran atau langkah-langkah
Contoh :


·         Menggunakan kode-kode untuk menyatakan langkah-langkah
·         Mirip bahasa pemrograman
Contoh :


DEKLARASI
X : integer

ALGORITMA
read(X)
if X mod 2 = 0 then {apakah X habis dibagi 2}
            write(“Genap”)    {jika ya}
else
            write(“Ganjil)    {jika tidak}


Kasus : Menghitung luas segitiga
-          Algoritma :
      
$    Masukkan alas (a)
$    Masukkan tinggi (t)
$    Hitung Luas (L),yaitu 0.5*alas*tinggi
$    Cetak luas (L)









 Algoritma Luas Segitiga
Input         : alas, tinggi
Proses        : Luas = (a x t) / 2
Output       : Luas Segitiga









Referensi :








0 komentar:

Posting Komentar