Anda di halaman 1dari 5

BAB PENGAYAAN

NOTASI ALGORITMA

Pada saat seorang programmer dihadapkan dengan suatu masalah, terkadang ia


langsung mencari cara menyelesaikannya dengan membuat program secara langsung.
Namun, membuat program tidaklah sebatas menulis program saja. Kita tidak dapat langsung
menuliskan program karena berbagai hal, misalnya faktor kerumitan program dan jenis
masalah yang belum pernah dipecahkan sebelumnya. Untuk itu perlu dibuat rancangan untuk
mewakili langkah-langkah pemecahan masalah.
Algoritma adalah penghubung antara masalah dan penyelesaiannya, sehingga
peranannya sangat penting dalam transformasi masalah ke dalam pemrograman. Algoritma
juga membantu mahasiswa mengembangkan daya penalaran dan kerangka berpikir yang
sistematis dalam memahami masalah dan membuat konsep pemecahan yang lebih baik
sehingga dapat menghasilkan metode yang tepat. Dengan demikian, penyusunan algoritma
menjadikan program lebih terstruktur.

2.1 Ciri-ciri Algoritma


Dalam menyusun algoritma yang baik perlu diperhatikan cirri-ciri berikut:
- Algoritma memiliki logika atau metode yang tepat dalam menyelesaikan masalah.
- Menghasilkan output yang tepat dan benar
- Algortima ditulis dengan bahasa yang standar secara sistematis dan rapi sehingga
tidak menimbulkan arti ganda (ambigu).
- Algortima ditulis dengan format yang mudah dipahami dan mudah diimplementasikan
ke dalam bahasa pemrograman.
- Semua operasi yang dibutuhkan terdefinisi dengan jelas.
- Semua proses dalam algoritma harus berakhir setelah sejumlah langkah dilakukan.
Menurut Donald E. Knuth, algoritma memiliki kriteria:
1. Input : algoritma dapat memiliki nol atau lebih inputan dari luar.
2. Output : algoritma harus memiliki minimal satu buah output keluaran.
3. Definiteness (pasti): algoritma memiliki instruksi-instruksi yang jelas dan tidak
ambigu.
4. Finiteness (terbatas): algoritma harus memiliki titik berhenti (stopping role).
5. Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus sesuai harapan dan
tidak mubazir.
Contoh instruksi yang tidak efektif adalah: A = A + 0 atau A = A * 1

Sebuah teks algoritma lengkap memiliki 3 struktur dasar, yaitu :


1. Bagian Judul (header)
2. Bagian Deklarasi
3. Bagian Algoritma
Contoh:
/* Algoritma luas_lingkaran
menghitung luas lingkaran
*/
DEKLARASI
{Nama Konstanta}
const N =10
const phi=3.14 {nilai phi}
{Nama variabel}
jari_jari, luas:real
DESKRIPSI
READ (jari_jari)
luas = Phi *jari_jari*jari_jari
print(luas)

2.2 Notasi Algoritma


Dalam Algoritma, tidak dipakai simbol-simbol / sintakss dari suatu bahasa
pemrograman tertentu, melainkan bersifat umum dan tidak tergantung pada suatu bahasa
pemrograman apapun juga. Notasi-notasi algoritma dapat digunakan untuk seluruh bahasa
pemrograman apapun.
Algoritma dapat disajikan dalam dua teknik yaitu menggunakan kata-kata (kalimat
deskriptif) dan gambar. Teknik kata-kata biasanya menggunakan kalimat deskriptif
ataupun pseudocode, sedangkan teknik gambar biasanya dibuat dalam bentuk diagram
alir (flow chart).
A. Kalimat deskriptif dan Pseudocode
Kalimat deskriptif sudah pasti menjadi cara paling mudah menyampaikan sebuah
algoritma terstruktur, karena paling mudah dibuat dan dimengerti, sedangkan
pseudocode berarti kode yang menyerupai (pseudo) kode dalam bahasa
pemrograman.
Contoh 1:
Mencari bilangan terbesar dari dua bilangan yang diinputkan
Bahasa deskriptif Pseudo-code
1. Masukkan bilangan pertama 1. Masukkan bilangan pertama (a)
2. Masukkan bilangan kedua 2. Masukkan bilangan kedua (b)
3. Jika bilangan pertama > bilangan 3. if a > b then kerjakan langkah 4,
kedua maka kerjakan langkah 4, jika else kerjakan langkah 5
tidak, kerjakan langkah 5.
4. Tampilkan bilangan pertama 4. print a
5. Tampilkan bilangan kedua 5. print b
Contoh 2:
Mengkonversi nilai ke huruf
Bahasa deskriptif Pseudo-code
1. Nilai A ditambah dengan 5 1. A ← A + 5
2. Cetak nilai A bila lebih besar dari 10 2. if A > 10 then print A
3. Dari dua bilangan A dan B cari
bilangan yang terbesar 3. if A > B then print A else print B
B. Diagram Alir
Penggunaan kalimat deskriptif dalam tahap penyelesaian masalah memiliki
kelemahan, yaitu penyusunan algoritma sangat dipengaruhi oleh tata bahasa
pembuatnya, sehingga kadang-kadang terjadi perbedaan pemahaman. Karena itu
dibuatlah metode yang menggambarkan tahap-tahap pemecahan masalah dengan
menggunakan simbol-simbol tertentu yang standar agar semua orang memiliki
pemahaman yang sama. Salah satu penulisan simbol tersebut adalah dengan
menggunakan diagram alir ( flowchart).
Diagram alir adalah kumpulan simbol-simbol yang menggambarkan alur logika
yang diproses oleh sebuah program dari awal sampai akhir. Diagram alir
merupakan alat yang berguna bagi programmer untuk merancang program.
Tabel 2.1
Simbol-simbol Diagram Alir
KETERANGAN LAMBANG CONTOH
Mulai/Selesai
Start
(Terminator)

Aliran Proses Masukkan p,l


Input/Output
L ← p*l

Tulis L
Proses

Stop

Percabangan

Perulangan

F
Syarat

Bagian yang diulang

Inisialisasi (Pemberian
nilai awal suatu
variabel)
Call (Memanggil
suatu prosedur / fungsi)

Titik connector yang


berada di halaman yang
sama

Titik konektor yang


berada di halaman lain

2.3 Struktur Kendali Algoritma


Secara umum, ada 3 struktur kendali sebuah algoritma. Struktur ini dibentuk dari
kombinasi simbol-simbol diagram alir. Struktur kendali tersebut dapat dilihat pada
gambar 2.1.

Gambar 2.1 Struktur Kendali Algoritma

1. Sequence Process: instruksi dikerjakan secara sekuensial, berurutan, yang ditandai


dengan aliran proses (tanda panah)
2. Selection Process: instruksi dikerjakan jika memenuhi kriteria tertentu ditandai
dengan proses percabangan
3. Iteration Process: instruksi dikerjakan selama memenuhi suatu kondisi tertentu
ditandai dengan proses perulangan
Ketiga proses ini akan dibahas lebih dalam di bab-bab selanjutnya.

Anda mungkin juga menyukai