Mengenal Flowchart dan Pseudocode Untuk Membuat Algoritma

Seandainya kalian ingin membuat sebuah algoritma, maka kalian harus menuliskannya dalam bentuk tertentu agar mudah dipahami oleh orang lain.

Bentuk penulisan algoritma ini disebut dengan notasi. Pada umumnya notasi algoritma ada 3 jenis, yaitu:

  1. Pseudocode adalah notasi dalam bentuk teks. Mirip dengan Programming Language, namun lebih sederhana.
  2. Flowchart adalah notasi dalam bentuk simbol. Notasi ini memudahkan dalam memvisualkan sebuah algoritma.
  3. Programming Language adalah notasi dalam bentuk kode program yang dapat dieksekusi menggunakan bahasa pemrograman tersebut.

Setiap notasi memiliki keunggulan dan kekurangan masing-masing. Berikut kita bahas satu per satu notasi algoritmanya.

Pseudocode

Berikut adalah contoh algoritma untuk menentukan bilangan genap atau ganjil menggunakan notasi pseudocode:

Contoh Pseudocode

Sekilas mirip dengan bahasa pemrograman, namun pseudocode cukup sederhana untuk dipahami oleh orang lain. Jarang sekali melibatkan tipe data pada notasi pseudocode, kecuali untuk kasus tertentu.

Keunggulan pseudocode di antaranya:

  1. Cukup sederhana, tidak merinci tipe data dan cara deklarasi variabel.
  2. Fokus kepada tahapan proses tanpa harus menggunakan istilah yang khusus.
  3. Mudah dipahami oleh orang awam

Kekurangan pseudocode di antaranya:

  1. Pada dasarnya pseudocode tidak dapat dieksekusi langsung menggunakan komputer, namun saat ini ada beberapa simulator yang dapat menjalankan pseudocode dengan batasan-batasan tertentu.
  2. Tidak disarankan untuk membuat proses aplikasi secara keseluruhan yang melibatkan banyak fungsi.
  3. Paradigma Object Oriented Programming sangat sulit dikonversi ke dalam bentuk pseudocode.

Flowchart

Berikut adalah contoh flowchart untuk pseudocode sebelumnya:

Contoh flowchart

Flowchart berupa simbol yang dapat dilihat dan dipahami dengan mudah. Terdapat aliran proses dari simbol Mulai sampai dengan simbol Selesai. Tujuan membuat flowchart adalah untuk mempermudah menyampaikan proses algoritma kepada orang awam.

Beberapa keunggulan flowchart adalah:

  1. Lebih mudah dipahami karena menggunakan simbol dan aliran proses.
  2. Lebih mudah mengevaluasi dan menemukan kesalahan dalam menyusun proses algoritma.
  3. Bersifat universal, sehingga mudah dipahami oleh orang awam dan orang yang berbeda bahasa.

Beberapa kekurangan flowchart adalah:

  1. Algoritma dengan proses yang kompleks dan banyak akan membuat flowchart menjadi lebih besar dan sulit ditampilkan.
  2. Pada dasarnya flowchart tidak dapat dieksekusi langsung di komputer, namun saat ini sudah ada beberapa simulator yang dapat mensimulasikan flowchart dengan beberapa keterbatasan.
  3. Butuh lebih banyak waktu untuk membuat flowchart yang rapi, kecuali menggunakan perangkat khusus.

Programming Language

Sebenarnya kurang cocok disebut sebagai notasi algoritma, bahasa pemrograman (programming language) lebih kepada kode untuk menjalankan algoritma, mengimplementasikan algoritma, membuktikan algoritma tersebut dapat dijalankan dan menghasilkan hasil yang benar.

Berikut contoh kode program Java untuk membuat algoritma menentukan bilangan ganjil dan genap:

Contoh kode program Java

Perlu diingat, beda bahasa pemrograman yang kita gunakan maka beda pula kode program yang dihasilkan. Ada bahasa pemrograman yang menghasilkan kode lebih sedikit daripada pseudocodenya, dan ada juga bahasa pemrograman yang menghasilkan kode lebih banyak daripada pseudocodenya.