Saturday, October 19, 2013

Notasi Algoritma

NOTASI ALGORITMA DAN ATURAN PENULISAN TEKS ALGORITMA

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 yang dinyatakan dalam kalimat deskriptif

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.

Contoh :

Algoritma Bilangan_Maksimum

Diberikan tiga buah bilangan bulat. Carilah bilangan bulat

maksimum diantara ketiga bilangan tersebut.

Deskripsi :

(1) baca bilangan 1

(2) baca bilangan 2

(3) bandingkan bilangan 1 dan bilangan 2, kita ambil yang

lebih besar, jika kedua bilangan tersebut sama besar,

dapat kita ambil bilangan 1, dan sebut bilangan

tersebut MAX

(4) baca bilangan 3

(5) bandingkan MAX dengan bilangan 3, dan pilih yang lebih

besar, jika keduanya sama besar, pilih MAX dan sebut

bilangan tersebut MAX.

(6) keluarkan sebagai output MAX

2) Notasi yang dinyatakan dengan pseudo code

Pseudo-code adalah notasi yang menyerupai notasi bahasa pemrograman tingkat tinggi, khususnya Pascal dan C. Bahasa pemrograman umumnya mempunyai notasi yang hampir mirip untuk beberapa instruksi seperti notasi if-then-else, while-do, repeat-until, read, write, dan sebagainya. Namun tidak seperti bahasa pemrograman yang direpotkan dengan tanda titik koma, indeks, format keluaran, kata-kata khusus, dan sebagainya, sembarang versi Pseudo-code dapat diterima asalakan perintahnya tidak membingungkan pembaca. Keuntungan menggunakan notasi Pseudo-code adalah kemudahan mentranslasi ke notasi bahasa pemrograman, karena terdapat korespodensi antara setiap Pseudo-code dengan notasi bahasa pemrograman. Sehingga Pseudo-code cocok untuk algoritma yang rumit.

Contoh :

Algoritma Bilangan_Maksimum

{ Dibaca tiga buah bilangan dari piranti masukan. Carilah

bilangan bulat maksimum diantara ketiga bilangan tersebut }

Deklarasi :

Bil1,Bil2,Bil3 : integer {bilangan yang dicari

maksimumnya}

MAX : integer {variabel bantu}

Deskripsi :

Read (Bil1,Bil2)

If Bil1 >= Bil 2 then

Bil1 = MAX

Else Bil2 = MAX

Read (Bil3)

If Bil3 >= MAX then

Bil3 = MAX

Write (MAX)

3) Notasi yang dinyatakan dalam flow chart

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. Ada 2 jenis Flowchart :

1. flowchart sistem, adalah suatu gambar yang menjelaskan :

-          file-file yang diproses oleh program

-          jenis piranti yang digunakan oleh file

-          operasi terhadap file (masukan ataupun keluaran).

2. flowchart program (biasa disebut flowchart saja), adalah suatu gambar yang menjelaskan   urutan :

-          Pembacaan data

-          Pemrosesan data

-          Pengambilan keputusan terhadap data

-          Penyajian hasil pemrosesan data

Nah….yang kita bahas disini adalah flowchart program atau biasa disebut flowchart saja.

Flowchart/Diagram Alur popular pada awal-awal era pemrograman dengan komputer  (terutama dengan bahasa Basic, Fortran, dan Cobol). Diagram alur lebih menggambarkan aliran instruksi di dalam program secara visual dibanding memperlihatkan struktur program. Notasi diagram alur lebih cocok digunakan untuk masalah yang kecil, untuk masalah yang besar tidak cocok digunakan karena membutuhkan berlembar halaman kertas. Selain itu, pengkonversian notasi algoritma ke bahasa pemrograman cenderung relatif sukar.

Simbol-simbol pada flowchart

Untuk mulai/akhir:

Simbol ini dinamakan terminator, digunakan untuk menyatakan MULAI (START) dan SELESAI (END) suatu algoritma.

Untuk input:

Manual input merupakan KOTAK MASUKAN yang digunakan untuk membaca data yang diberikan oleh usernya. Jadi user mengimput suatu harga/variable/nilai.

Data merupakan KOTAK DATA yang digunakan untuk membaca dan menampilkan data. Contoh aplikasinya yaitu jika kita ingin kita ingin mengetahui saldo tabungan kita pada mesin ATM, ATM hanya tinggal membaca data yang ada.

Untuk proses:

Proses merupakan KOTAK PENUGASAN untuk melakukan perhitungan matematika yang hasilnya diberikan sebagai suatu variable.

Decision merupakan KOTAK KEPUTUSAN untuk memutuskan arah atau percabangan yang diambil sesuai dengan kondisi yang saat itu terjadi. Hanya ada 2 keputusan yaitu BENAR atau SALAH.

Untuk output:

Kotak ini selain untuk input, digunakan juga untuk output. Digunakan untuk menampilkan data.

Dokumen merupakan KOTAK KELUARAN untuk menampilkan / mencetak / menyimpan hasil(keluaran).

Simbol-simbol lain yang digunakan antara lain:

Simbol Aliran Panah.

Connector merupakan SIMBOL PENGHUBUNG, untuk penghubung bila diagram alur terputus tapi masih dalam halaman yang sama.

Off-page connector merupakan SIMBOL PENGHUBUNG, untuk penghubung bila diagram alur terputus disebabkan misalnya oleh pergantian halaman (tak cukup digambar 1 halaman).



Contoh : Algoritma Bilangan_Maksimum dalam flow chart

Aturan Penulisan Teks Algoritma

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.

1) Judul Algoritma

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.

2) Deklarasi

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.

3) Deskripsi

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 :

— Nama type

— Nama konstanta

— Nama variabel

— Nama fungsi

— Nama prosedur

— 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

◦ Sequence (runtutan)

◦ Analisa kasus

◦ Perulangan

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


No comments:

Post a Comment