Rabu, 02 Agustus 2017

Cara Penyajian Algoritma

Pada artikel sebelumnya telah kita bahas mengenai dasar algoritma dan sedikit tentang cara penyajiannya. Pada artikel lanjutan kali ini, kita akan bahas lebih detail lagi tentang cara penyajian algoritma, yang meliputi Natural Language (Bahasa Natural, alami), Flowchart, Pseudo-code, serta langsung dengan Bahasa Pemrograman tertentu. Sekali lagi saya tekankan bahwa yang kita bahas, yaitu Algoritma, sangat penting perannya dalam Pemrograman Komputer. bisa dikatakan bahwa Algoritma merupakan inti dari Pemrograman itu sendiri. Jadi, sangat disarankan untuk lebih serius dalam mempelajari Algoritma dalam hubungannya dengan Pemrograman Komputer ini. Dalam contoh – contoh di bawah ini mungkin terdapat beberapa istilah yang belum pernah di dengar, seperti variabel, konstanta, dll. Variabel/ variable sendiri adalah sejumlah alokasi space memori yang digunakan untuk menyimpan sebuah data secara sementara, dan nilainya dapat diubah – ubah. Sedangkan konstanta mirip dengan variabel, namun nilainya tetap tidak dapat diubah selama program berjalan.
Oke, tanpa berpanjang kata lagi, langsung aja kita bahas satu per satu cara penyajian algoritma ini.
BAHASA NATURAL, ALAMI – NATURAL LANGUAGE
Bahasa Natural merupakan cara penyajian suatu algoritma yang paling sederhana dan paling mudah dimengerti (bagi saya dan mungkin, kebanyakan dari mereka yang baru belajar algoritma). Mengapa? Mungkin karena Bahasa Natural adalah bahasa yang biasa kita gunakan sehari – hari namun tetap sesuai dengan kaidah bahasa yang baku. Ada beberapa hal yang perlu diperhatikan jika kita akan menyajikan suatu algoritma sebuah program dengan bahasa natural, antara lain Start dan End yang harus dituliskan secara explisit. Sepengalaman saya dalam menggunakan Bahasa Natural, Start biasanya dituliskan sebagai ‘inisialisasi’ atau ‘Mulai’ dan merupakan langkah pertama dalam algoritma, sedangkan End sendiri dituliskan sebagai ‘selesai’ dan dituliskan pada akhir algoritma. Namun sebenarnya tidak ada aturan baku dalam hal penamaan lain dari Start dan End itu sendiri, jadi terserah namun tetap mengandung arti/maksud yang sama.
Salah satu contoh sederhana adalah algoritma untuk menentukan sebuah bilangan adalah ganjil atau genap (mungkin ini adalah contoh/ latihan pertama Anda waktu belajar algoritma di kampus, hahaha..). Jadi diberikan input sebuah bilangan dari user, dan program akan secara otomatis menentukan dan memberikan output berupa informasi genap atau ganjil. Coba perhatikan :
1.  Inisialisasi
2.  Input sebuah bilangan, masukkan ke dalam sebuah variabel, misalkan saja bil.
3.  Apakah bil modulus 2 sama dengan nol?
–  Jika ya, maka bilangan tersebut adalah bilangan genap.
–  Jika tidak, maka sudah dapat dipastikan bahwa bilangan tersebut adalah bilangan ganjil.
4.  Tampilkan jenis bilangan (genap, atau ganjil).
5.  Apakah ingin mengulang proses?
–  Jika ya, kembali ke langkah 2.
–  Jika tidak, langsung ke langkah 5 (selesai).
5.  Selesai.

contoh di atas sangat sederhana, dan sangat mudah untuk dimengerti. Mungkin ada yang belum tau modulus? Bagi yang belum tau, sekarang saya kasi tau.. Jadi modulus itu adalah sisa hasil pembagian. Apa hubungannya sama genap ganjil? Oke, jadi yang namanya bilangan genap adalah bilangan yang habis dibagi oleh 2, atau dengan kata lain, sisa pembagiannya adalah nol. Nah, jika ada bilangan yang dimoduluskan dengan 2 hasilnya engga nol, sudah pasti bilangan tersebut adalah ganjil. Hampir seluruh bahasa pemrograman sudah menyediakan operator modulus ini secara built-in. Biasanya dilambangkan dengan simbol persen (%) –> 3 % 2 == 1. Kalo 5 % 3 == ?? bisa ngitung kan? :-p
Untuk Bahasa Natural, saya rasa cukup segitu aja. Menurut pengalaman, saya jarang disuru buat algoritma dengan bahasa natural, lebih sering dengan menggunakan Flowchart. Tapi tetap cara ini harus dikuasai dengan baik! ^^

0 komentar:

Posting Komentar