Notasi yang cocok untuk algoritma program yang kecil adalah

Sudah paham cara membuat mie instan pedas ya? Sebenarnya tanpa diberitahu pun anda sudah paham cara buatnya. Apalagi bagi anak kost. Namun, tahukah anda bahwa resep yang anda baca tadi dapat dikategorikan sebagai salah satu notasi algoritma? Resep yang anda baca tadi berisikan serangkaian instruksi langkah demi langkah untuk mengambil bahan dan menghasilkan mie instan yang enak. Kadang tanpa disadari resep pembuatan mie instan ada disetiap kemasannya.

Secara umum, suatu algoritma dapat didefinisikan sebagai suatu prosedur untuk memecahkan/memahami/menyelesaikan masalah.  Dalam konteks pemrograman komputer, suatu algoritma, didefinisikan sebagai: Sekumpulan operasi yang tertata rapi (well-ordered), tidak ambigu  (unambiguous) and  dan efektif secara komputasi (effectively computable), sehingga ketika algoritma dijalankan, mampu mendapatkan hasil dalam jumlah waktu yang terbatas.



  1. Tertata rapi (well-ordered): langkah-langkahnya telah tertata dalam urutan yang jelas
  2. Tidak ambigu  (unambiguous): operasi yang dijelaskan dapat dipahami oleh komputer tanpa penyederhanaan lebih lanjut
  3. Komputasi yang efektif (effectively computable): komputer dapat benar-benar melakukan operasi sesuai algoritma

Metode untuk Mengembangkan Algoritma

  1. Definisikan masalah (define the problem): Nyatakan masalah yang ingin anda selesaikan dengan istilah yang jelas dan ringkas. Ingat, mendefinisikan masalah tentu berbeda dengan membuat masalah ya! Jika anda bikin masalah baru, artinya anda ingin ngajak berantem. Mendefinisikan berarti memahami masalah yang sudah ada, bukan membuat masalah baru. Misalnya: memasak nasi. Tentu tidak setiap orang tahu cara memasak nasi yang baik. Jadi cara memasak nasi dapat dijelaskan melalui algoritma. 
  2. Sebutkan input (informasi/data yang dibutuhkan untuk menyelesaikan masalah) dan output (hasil dari algoritma). Misalnya: dalam kasus algoritma memasak nasi, input yang diperlukan adalah bahan dan alat untuk memasak nasi, yaitu beras, air dan magic com. Sedangkan output yang dihasilkan adalah nasi siap saji.  
  3. Jelaskan langkah-langkah yang diperlukan untuk mengolah input hingga menghasilkan output.  Mulailah dari level yang paling awal hingga akhir, sehingga tercapai langkah-langkah yang tertata rapi, tidak ambigu dan efektif. 
  4. Uji algoritma: pilih set data dan verifikasi bahwa algoritma anda berfungsi dengan baik.

Algoritma dapat direpresentasikan dalam 3 notasi, antara lain 

Notasi Deskriptif

Notasi algoritma deskriptif dilakukan dengan cara menuliskan intruksi-intruksi yang harus dilaksanakan dalam bentuk uraian kalimat deskriptif dengan menggunakan bahasa yang jelas dan tidak ambigu. Notasi jenis ini disarankan untuk algoritma yang pendek karena apabila untuk algoritma yang panjang notasi deskriptif kurang efektif.  


Secara garis besar notasi deskriptif tersusun atas tiga bagian utama, yaitu: Bagian Judul, merupakan bagian yang terdiri atas nama algoritma dan penjelasan atau spesifikasi algoritma tersebut. Bagian Deklarasi, merupakan bagian untuk mendefinisikan semua nama yang digunakan pada algoritma dapat berupa variabel, konstanta, tipe ataupun fungsi. Bagian Deskripsi, merupakan bagian inti pada struktur algoritma yang berisi uraian langkah-langkah penyelesaian masalah.

Contoh ringkas notasi deskripsi adalah instruksi memasak mie instan pedas, sebagaimana dicontohkan pada awal artikel. 

Pseudocode

Pseudecode merupakan cara penulisan algoritma yang menyerupai bahasa pemrograman tingkat tinggi. Pada umumnya notasi pseudecode menggunakan bahasa yang mudah dimengerti secara umum dan juga lebih ringkas dari pada algoritma.

Contoh pseudocode

Ekspresikan algoritma dalam bentuk pseudocode untuk mendapatkan dua bilangan dari pengguna, yaitu pembilang (dividend) dan penyebut (divisor). Algoritma juga memastikan bahwa penyebut tidak bernilai 0 serta menampilkan hasil bagi antara pembilang dan penyebut! 

Agar tidak salah paham Pembilang adalah suatu bilangan atau angka yang akan dibagi

Penyebut adalah pembagi suatu bilangan (angka yang akan membagi suatu bilangan)

1. Deklarasi variabel: pembilang, penyebut, hasil_bagi

2. Meminta pengguna untuk entri pembilang dan penyebut

3. Mendapatkan pembilang dan penyebut

4. IF penyebut bernilai nol, THEN

4.1. DO

4.1.1. Menampilkan pesan kesalahan, “penyebut tidak boleh bernilai nol”

4.1.2. Meminta pengguna entri penyebut

4.1.3. Mendapatkan penyebut

4.2. WHILE penyebut bernilai 0

5. ENDIF

6. Menampilkan pembilang dan penyebut

7. Hitung hasil_bagi = pembilang/penyebut

8. Menampilkan hasil_bagi 

Flowchart Flowchart bisa diartikan sebagai diagram alir yang menggambarkan langkah-langkah dan struktur suatu algoritma atau program. Aturan umum flowchart

  • Semua simbol dari flowchart dihubungkan oleh garis aliran (arrows) yang mengindikasikan arah aliran bukan garis biasa.
  • Garis aliran memasuki bagian atas simbol dan keluar dari bagian bawah, kecuali untuk simbol keputusan (decision), yang memiliki garis aliran yang keluar dari bawah atau samping.
  • Aliran proses bergerak dari atas ke bawah.
  • Awal dan akhir pada flowchart disimbolkan dengan terminal. 

Berikut ini simbol-simbol dasar dalam flowchart yang secara umum paling sering digunakan

Notasi yang cocok untuk algoritma program yang kecil adalah
Gambar 1. Simbol dalam flowchart (yang sering digunakan)


Contoh flowchart untuk memasak nasi

Notasi yang cocok untuk algoritma program yang kecil adalah

Notasi yang cocok untuk algoritma program yang kecil adalah
Lihat Foto

KOMPAS.com/Gischa Prameswari

Ilustrasi notasi algoritma

KOMPAS.com - Algoritma adalah dasar pemrograman komputer. Algoritma urutan perintah logis dengan bahasa yang dapat dimengerti oleh komputer, sehingga komputer dapat melakukan perintah yang diberikan manusia.

Sebelum mempelajari bahasa pemrograman yang kompleks, terlebih dahulu kita harus mempelajari tentang notasi algoritma.

Menurut Rinaldi Munir dalam buku Algoritma dan Pemrograman (1997) notasi algoritma adalah desain berisi urutan langkah-langkah pencapaian solusi yang tidak tergolong bahasa pemrograman apapun.

Sehingga notasi algoritma merupakan dasar dibuatnya suatu program komputer dan dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.

Baca juga: Arsitektur Komputer: Pengertian, Jenis, Fungsi, dan Bagiannya

Secara umum notasi algoritma terdiri dari tiga jenis, yaitu kalimat deskriptif, pseudocode, dan flowchart. Berikut adalah ketiga penjelasan dari tiga notasi pemrograman tersebut:

Notasi algoritma kalimat deskriptif adalah notasi algoritma yang menggunakan bahasa Inggris atau bahasa Indonesia dalam menjabarkan desain langkah pemrograman yang akan dibuat.

Dalam notasi kalimat deskriptif akan dijumpai berbagai kata kerja dalam bahasa manusia seperti mulai, tulis, baca, tampilkan, maka, ulangi, read, print, if, dan end.

Notasi kalimat deskriptif ditulis dengan kerangka utama berupa judul, deklarasi, dan deskripsi.

Deklarasi adalah bagian yang mendefinisikan variabel, fungsi, dan juga konstanta yang akan digunakan dalam pemrograman. Adapaun deskripsi berisi uraian langkah atau inti dari algoritma untuk suatu program komputer.

Contoh notasi algoritma kalimat deskriptif:

Dalam suatu penulisan algoritma terkadang kita sulit untuk mengerti dan memahami maksud dari algoritma tersebut. Selain itu juga kita sulit untuk menuliskan algoritmanya. Untuk itu agar mempermudahnya dapat dilakukan notasi – notasi algoritma. Notasi algoritma merupakan rancangan penyelesaian masalah (algoritma) yang dituliskan ke dalam notasi (cara penulisan khusus).

Notasi algoritma yang sering dijumpai ada 3 macam yaitu :

  1. Notasi deskriptif, yaitu dengan cara menuliskan langkah-langkah penyelesaian masalah dengan kalimat-kalimat yang jelas dan deskriptif disertai dengan urutan (nomor urut) yang jelas. Selain itu juga Dengan notasi ini, deskripsi setiap langkah dijelaskan dengan bahasa yang jelas. Notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar.
  2. Notasi bagan alir (flow chart), yaitu algoritma menggunakan bagan alir dengan memanfaatkan bentuk-bentuk geometri seperti persegi panjang, jajaran genjang, lingkaran dan sebagainya. Sama halnya dengan notasi deskriptif, notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar.
  3. Notasi pseudo-code, yaitu notasi algoritma yang praktis dan mirip dengan bahasa pemrograman tingkat tinggi seperti Pascal. Banyak notasi pseudo-code yang digunakan oleh para ahli komputer dan berbeda-beda sehingga tidak ada aturan baku dalam penulisan pseudo-code ini, tetapi yang paling banyak digunakan dalam algoritma pemrograman adalah yang mendekati bahasa pascal. Keuntungan menggunakan notasi pseudo code adalah kemudahan mengkonversinya lebih tepat yang disebut mentranslasi ke notasi bahasa pemrograman, karena terdapat korespondensi antara setiap pseudo code dengan notasi bahasa pemrograman.

Aturan Penulisan Teks Algoritma

Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis alam bentuk notasi apapun , asalkan mudah dibaca dan dimengerti. Tidak ada notasi yang baku dalam penulisan teks algoritma. Tiap orang dapat membuat aturan penulisan dan algoritma sendiri. Namun, agar notasi algoritma dapat dengan mudah ditranslasi ke alam notasi bahasa pemrograman, maka sebaiknya notasi algoritma itu berkoresponden dengan notasi bahasa pemrograman secara umum. Pada dasarnya, teks algoritma disusun atas tiga bagian (blok) : bagian judul (header) agoritma, bagian deklarasi, dan bagian deskripsi. Setiap bagian dapat diberi komentar untuk memperjelas maksud teks yang dituliskan. Komentar biasanya ditulis menggunakan kurung kurawal.

Judul algoritma adalah bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. Nama algoritma sebaiknya singkat, namun cukup menggambarkan apa yang akan dilakukan oleh algoritma tersebut. Di bawah nama algoritma disertai dengan penjelasan singkat (intisari) tentang apa yang dilakukan oleh algoritma. Penjelasan di bawah nama algoritma sering dinamakan juga spesifikasi algoritma. Algoritma harus ditulis sesuai dengan spesifikasi yang didefinisikan.

Di dalam algoritma, deklarasi nama adalah bagian untuk mendefinisikan semua nama yang dipakai di dalam algoritma. Nama tersebut dapat berupa nama tetapan, nama peubah, nama tipe, nama prosedur dan nama fungsi.

Deskripsi adalah bagian terpenting dari struktur algoritma. Bagian ini berisi uraian langkah-langkah penyelesaian masalah. Langkah-langkah ini dituliskan dengan notasi yang lazim dalam penulisan algoritma. Setiap langkah algoritma dibaca dari langkah paling atas hingga langkah paling bawah. Urutan penulisan menentukan urutan pelaksanaan perintah.

— Algoritma berisi langkah-langkah penyelesaian masalah. Langkah-langkah tersebut dapat ditulis dalam notasi apapun, asalkan mudah dibaca dan dimengerti, karena memang tidak ada notasi baku dalam penulisan algoritma.

— Agar notasi algoritma mudah ditranslasi ke dalam notasi bahasa pemrograman, maka sebaiknya notasi algoritma tersebut berkorespnden dengan notasi bahasa pemrograman secara umum.

— Judul adalah bagian teks algoritma yang digunakan sebagai tempat mendefinisikan nama dengan menentukan apakah teks tersebut adalah program, prosedur, fungsi. Setelah judul disarankan untuk menuliskan spesifikasi singkat dari teks algoritma tersebut. Nama algoritma sebaiknya singkat namun cukup menggambarkan apa yang akan dilakukan oleh algoritma tersebut.

— Kamus adalah bagian teks algoritma sebagai tempat untuk mendefinisikan :

— Algoritma adalah bagian inti dari suatu algoritma yang berisi instruksi atau pemanggilan aksi yang telah didefinisikan. Komponen teks algoritma dalam pemrograman procedural dapat berupa :

◦ Instruksi dasar seperti input/output, assignment

— Setiap langkah algoritma dibaca dari “atas” ke “bawah”. Urutan deskripsi penulisan menentuan urutan langkah pelaksanaan perintah.

http://www.amazinglight.info/program-programming-dan-notasi-algoritma.html