Lihat Tentang Putri

Foto saya
Berau, Kalimantan Timur, Indonesia
Simple girl :D Love AC MILAN

Sabtu, 12 Januari 2013

Algorithm & Flowchart

Algorithm 
“Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”.
 Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu computer yang diacu dalam terminologi algoritma. Namun, jangan beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-haripun banyak terdapat proses yang dinyatakan dalam suatu algoritma.

Sebagai contoh:

Misalkan, saya punya 2 buah ember masing-masing bervolume 3 liter dan 5 liter. Saya hanya punya dua ember tersebut. Entah karena lupa atau sengaja lupa, suatu ketika saya ingin membeli 4 liter minyak tanah. Lha, yang saya bawa itu hanya ember berukuran 3 liter dan 5 liter saja, saya boleh memindahkan dari ember satu ke ember lain, mengembalikan minyak tanah ke tempat asalnya dan sebagainya. Bagaimana Algoritmanya?
Algoritma mendapatkan air dengan volume 4 liter.

  1. Isi penuh ember 3 liter dengan air. {ember 3 liter berisi air 3 liter}
  2. Tuangkan air dari ember 3 liter ke dalam ember 5 liter. {ember 5 liter berisi air 3 liter}.
  3. Isi penuh ember 3 liter dengan air. {ember 3 liter berisi air 3 liter}
  4. Tuang air dari ember 3 liter ke ember 5 liter hingga ember 5 liter penuh. {di dalam ember 3 liter sekarang berisi air sebanyak 1 liter}
  5. Kembalikan air dari ember 5 liter ke dalam drumnya.{ember 5 liter kosong}
  6. Tuangkan air dari ember 3 liter ke ember 5 liter.{ember 3 liter kosong, ember 5 liter berisi air 1 liter}
  7. Isi penuh ember 3 liter dengan air, lalu tuang ke dalam ember 5 liter. Maka akan diperoleh air sebanyak 4 liter {1 + 3 = 4 liter minyak}.


Ciri penting algoritma
• Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.
• Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (Ambiguitas).
• Algoritma memiliki nol atau lebih masukkan.
• Algoritma memiliki nol atau lebih keluaran.
• algoritma harus efektif (setiap langkah harus sederhana sehingga dapat dikerjakan dalam waktu yang masuk akal).




Flowchart

Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma dalam suatu program, yang menyatakan arah alur program tersebut.

Simbol - simbol Flowchart:


Bila seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan nih, seperti:

1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri kekanan.

2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya.

3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.

4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja

5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.

6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati.

7. Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem.

8. Gunakan simbol-simbol flowchart yang standar.

Mari kita lihat penampakan flowchart sesungguhnya..

Manfaat Flowchart :
  •             Kita akan terbiasa berfikir sistematis
  •       Terstruktur dalam setiap kesempatan
  •       Dengan mengguanakan flowchart, kita akan lebih mudah   mengecek dan menemukan bagian-bagian prosedur yang valid dan bertele-tele.
  •       Prosedur yang dikembangkan akan lebih mudah dipahami oleh orang lain, sehingga tidak menimbulkan kesalahan interpretasi apabila mau menerapkan prosedur yang kita kembangkan.

"Kecerdasan tidak banyak berperan dalam proses penemuan. Ada suatu lompatan dalam kesadaran, sebutlah itu intuisi atau apapun namanya, solusinya muncul begitu saja dan kita tidak tahu bagaimana atau mengapa."
          - Albert Einstein


 Grazie..

1 komentar: