Cara menulis Algoritma

cara menulis algoritma, natural languange, flowchart, notasi pseudocode,cara penulisan algoritma


Untuk melakukan proses simulasi dari proses yang masih menggunakan manual, diperlukan sebuah cara menuangkan solusi dalam bentuk sebuah tulisan. agar mudah dipahami dan mudah dibaca orang lain yang selanjutnya akan dituangkan kedalam sebuah aplikasi komputer maka dibutuhkanlah sebuah standar penulisan.

Kenapa solusi tersebut perlu dibaca oleh orang lain? mungkin kita berfikiran bahwa untuk memecahkan solusi pengihtungan 20+15 (sesuai contoh sebelumnya), itu mudah bagi kita untuk memahami tapi untuk orang lain belum tentu karena mungkin saja orang lain dapat menyelsaikan masalah tersebut dalam beberapa cara sehingga mungkin hasilnya akan sama tetapi caranya yang berbeda yang mengakibatkan tidak seragam, dan komputer juga pasti tidak akan dapat membaca dan menampilkan hasil secara langsung. maka perlu dituliskan langkah-langkah secara berurutan untuk menuliskan solusi dari permasalahan tersebut.

untuk mempermudah penulisan algoritma terdapat tiga jenis standar penulisan yaitu sebagai berikut :
  1. Natural Language
  2. Flowchart
  3. Notasi Pseudocode
berikut adalah pembahasan dari masing-masing cara penulisan algoritma tersebut :

Natural Language

penulisan algoritma menggunakan natural language terdapat tiga hal penting diantaranya adalah header,deklarasi dan badan algoritma.

Header

Header merupakan bagian awal algoritma dan sering dipakai sebagai tanda pengenal yang berisi judul algoritma, dalam penulisan alur pada logika program biasanya diawali dengan keyword program.

Deklarasi 

Deklarasi adalah bagian yang mendeklarasikan variabel dan konstanta yang akan digunakan dalam program.

Badan Algoritma

Badan algoritma adalah bagian pada setiap proses computing (perhitungan), penyeleksian dan perulangan dilakukan.

Contoh penulisan Algoritma


Contoh algoritma untuk menjumlahkan dua bilangan.

Deklarasi 
A,B,hasil: integer (variabel-variabel tersebut bertipe integer/numerik)

Algoritma
1. berikan nilai pada variabel A dengan nilai 10
2. berikan nilai pada variabel B dengan nilai 13
3. jumlahkan variabel A dan variabel B kemudian simpan hasilnya pada variabel hasil
4. cetak / tampilkan nilai variabel hasil
5. selesai.

Keuntungan gaya penulian algoritma natural language diantaranya adalah :
  1. Strukturnya sederhana dan mudah dalam penulisan.
  2. Tidak memiliki standar khusus dalam penulisan sehingga mudah dalam mempelajarinya.
  3. Tidak memerlukan software khusus dalam prancangannya.
Kerugian gaya penulian algoritma natural language diantaranya adalah :
  1. Setiap programmer mempunyai gaya penulisan yang tidak sama sehingga sudut pandang atau cara membacanya juga kemugkinan berbeda. kesulitan tersebut muncul dikarenakan tidak adanya keseragaman dalam penulisan algoritma.
  2. Algoritma akan menjadi sangat panjang jika kasus yang diselesaikan cukup kompleks, sehingga kurang efisien.
  3. sukar mengonversinya kedalam bentuk kode pemrograman.

Menggunakan Flowchart

Gaya penulisan flowchart adalah model penulisan dengan menggunakan bentuk penyusunan bangun ruang flowchat disebut juga bagan alir.  flowchart merupakan bagian yang menunjukan aliran atau runtutan data yang terjadi dalam progarm secara logika. model ini lebih sering dipakai karena memiliki standar penggunaan yang sama, berikut adalah aturan penyusuana yang harus diikuti ketika menggunakan flowchart :
  1. Penyusunan simbol flowchart dimulai dari atas ke bawah dan dari kiri ke kanan pada suatu halaman.
  2. Setiap proses dalam  simbol harus dilengkapi dengan nama dan aktifitas yang jelas.
  3. Bagian awal harus dimulai dengan start/mulai dan diakhiri dengan simbol end/akhir.
  4. Setiap proses harus memiliki input dan menghasilkan output.
  5. pemberian nama proses simbol flowchart sebaikya menggunakan kata kerja pada suatu simbol seperti berikut :
    
    "Masukan Varieble A"
    "Hasil=A+B"
    
      
  6. Masing-masing kegiatan didalam flowchart harus memiliki alur data proses secara rinci dan jelas.
  7. Kegiatan yang terputus ditempat lain harus ditunjukan dengan jelas menggunakan simbol penghubung.
Ada lima jenis flowchart yaitu sebagai berikut :
  1. System flowchart, menjelaskan urutan setiap prosedur yang terdapat pada sistem.
  2. Document flowchart, menunjukan arah aliran data laporan dan formulir pada subprogram atau proses.
  3. programe flowchart, berguna untuk melakukan analisis sistem dengan menggambarkan proses dalam suatu prosedur program.
  4. Process flowchart, merupakan bagian yang sering digunakan dalam aliran proses pada teknik industri.
Keuntungan menggunakan flowchart adalah sebagai berikut :
  1. Lebih mudah dalam pembacaan dan pemahaman karena memiliki standar penulisan yang jelas.
  2. Dapat digunakan untuk menyelsaikan masalah yang tidak rumit
  3. Lebih rinci katena menggunakan visualisasi.
Kerugian menggunakan flowchart adalah sebagai berikut :
  1. Tidak cocok untuk menyelesaikan permasalahan yang rumit.
  2. Memerlukan software khusus untuk untuk menambahkan gambar seprti Microsoft Visio
  3. Sedikit susah untuk melakukan konversi kedalam kode program.
  4.  Memakan ruang ketika menata simbol flowchart.

 Notasi Pseudocode

Pseudocode merupakan penyusunan dan penulisan logika dalam bentuk notasi kode yang mirip dengan bahasa pemrograman tertentu secara global, yakni tidak mewakili sebuah bahasa tertentu pada penulisan. tidak ada aturan khusus dalam penulisan struktur algoritma dengan pseudocode seperti flowchart.

Penulisan struktur algoritma dengan pseudocode harus memiliki bagian seperti berikut :
  1. Header, berisi informasi judul
  2. Komentar jika diperlukan
  3. Deklarasi  variabel.
  4. Badan algoritma, berisi proses logika progarm.
  5. bagian akhir program.
  6. Deklarasi variabel menggunakan tanda ":" 
  7. Assignment (pernyataan) menggunakan format "nama_variabel←nilai" contoh y←100 artinya adalah nilai y sama dengan 100.
  8. Pembuatan komentar dapat diawali dengan karakter "{" dan diakhiri dengan "}"
  9. Beberapa keyword dalam pemrograman boleh dipergunakan untuk memperjelas alur logika.
  10. Read digunakan untuk menerima masukan (input)
  11. Write digunakan untuk mencetak nilai kelayar.
  12. While digunakan melakukan pengulangan selama kondisi bernilai benar.
  13. if..then digunakan unutk metode penyeleksian.
Contoh : terdapat sebuah batang bambu dengan panjang 12 m akan dipotong menjadi bilah pagar berukuran 4 m, sebuah batang bambu dapat dipecah menjadi 4 bilah kecil, menurut anda berapa bilah bambu yang dapat dihasilkan dari bambu tersebut? Penyelsaian :

  program hitung_bambu
  {digunakan untuk menghitung jumlah potongan bilah yang dihasilkan dari sebuah bambu}
  
  Deklarasi 
  p_bambu	: integer {panjang bambu}
  b_bilah 	: integer {banyaknya poting bilah yang dihasilkan dari sebuag bambu}
  u_bilah	: integer {panjang perpotongan}
  jumlah 	: integer {jumlah potong bilah yang dihasilkan}
  
  Algorirma
  p_bambu 	← 12 {dalam meter}
  b_bilah	← 4 {dalam pcs}
  u_bilah	← 4 {dalam meter}
  jumlah	← (p_bambu/b_bilah) * u_bilah
  write (jumlah)