Gambar tema oleh Storman. Diberdayakan oleh Blogger.

Sample Text

Popular Posts

Minggu, 24 Januari 2016

Materi dasar Algoritma

















1. Pengertian Algoritma

Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis.  Masalah dapat berupa apa saja, dengan catatan untuk setiap masalah, ada syarat kondisi awal yang harus dipenuhi sebelum menjalankan algoritma.  Konsep algoritma sering kali disetarakan dengan sebuah resep.  Sebuah resep biasanya memiliki daftar bahan atau bumbu yang akan digunakan, urutan pengerjaan dan bagaimana hasil dari urutan pengerjaan tersebut.  Apabila bahan yang digunakan tidak tertera (tidak tersedia) maka resep tersebut tidak akan dapat dikerjakan.  Demikian juga jika urutan pengerjaannya tidak beraturan, maka hasil yang diharapkan tidak akan dapat diperoleh.  
Algoritma yang berbeda dapat diterapkan pada suatu masalah dengan syarat yang sama. Tingkat kerumitan dari suatu algoritma merupakan ukuran seberapa banyak 
komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan masalah.  Umumnya, algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki tingkat kerumitan yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang tinggi. Perhatikan algoritma sederhana berikut.

Contoh :Algoritma menghitung luas segitiga.
1. Start
2. Baca data alas dan tinggi.
3. Luas adalah alas kali tinggi kali 0.5
4. Tampilkan Luas
5. Stop

Algoritma di atas adalah algoritma yang sangat sederhana, hanya ada lima langkah.  Pada algoritma ini tidak dijumpai perulangan ataupun pemilihan.  Semua langkah dilakukan hanya satu kali. Sekilas algoritma di atas benar, namun apabila dicermati maka algoritma ini mengandung kesalahan yang mendasar, yaitu tidak ada pembatasan pada nilai data untuk alas dan tinggi. Bagaimana jika nilai data alas atau tinggi adalah bilangan 0 atau bilangan negatif ?  Tentunya hasil yang keluar menjadi tidak sesuai dengan yang diharapkan. Dalam kasus seperti ini kita perlu menambahkan langkah untuk memastikan nilai alas dan tinggi memenuhi syarat, misalnya dengan melakukan pengecekan pada input yang masuk. Apabila input nilai alas dan tinggi kurang dari 0 maka program tidak akan dijalankan.  Sehingga algoritma di atas dapat dirubah menjadi seperti contoh berikut.

Contoh  : Hasil perbaikan algoritma perhitungan luas segitiga.
1.     Start
2.     Baca data alas dan tinggi.
3.     Periksa data alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari nol
maka lanjutkan ke langkah ke 4 jika tidak maka stop
4.     Luas adalah alas kali tinggi kali 0.5
5.     Tampilkan Luas
6.     Stop

Dari penjelasan di atas dapat diambil kesimpulan pokok tentang algoritma. Pertama, algoritma harus benar. Kedua algoritma harus berhenti, dan setelah berhenti, algoritma memberikan hasil yang benar.

2. Cara Penulisan Algoritma

 Flowchart

Flowchart atau bagan alir adalah skema/bagan (chart) yang menunjukkan aliran (flow) di dalam suatu program secara logika.  Flowchart merupakan alat yang banyak digunakan untuk menggambarkan algoritma dalam bentu notasi-notasi tertentu.  Secara lebih detil bagian ini akan dibahas pada bagian berikutnya. Pada flowchart ada beberapa simbol penting yang digunakan untuk membuat algoritma sebagaimana tercantum pada Gambar 5.3.
Simbol Flowchart :

    Gambar Simbol-simbol yang digunakan dalam flowchart.

Program Flowchart dapat terdiri dari dua macam, yaitu bagan alir logika program ( program logic flowchart ) dan bagan alir program komputer terinci (detailed computer program flowchart).  Bagan alir logika program digunakan untuk menggambarkan tiap-tiap langkah di dalam program komputer secara logika dan biasanya dipersiapkan oleh seorang analis system.  Sedangkan bagan alir program komputer terinci digunakan untuk menggambarkan instruksi-instruksi program komputer secara terinci dan biasanya dipersiapkan oleh seorang programmer. 
Apabila Contoh  dibuat program  flowchartnya maka akan tampak pada gambar







0 on: "Materi dasar Algoritma"