Anda di halaman 1dari 23

NOTASI

ALGORITMA
PENDAHULUAN
 Algoritma = Rancangan Program
 Langkah-langkah pemecahan masalah
ditulis dalam notasi-notasi deskriptif yang
disebut dengan notasi algoritma.
 Notasi algoritma dibuat sedemikian
sehingga tidak tergantung dengan :
 Bahasa pemrograman yang akan
digunakan.
 Komputer yang akan menjalankan
program tersebut.
NOTASI ALGORITMA
 Untaian kalimat deskriptif
 Flowchart (diagram alir)
 Pseudocode
UNTAIAN KALIMAT DESKRIPTIF
 Langkah-langkah pemecahan masalah
dituangkan dengan untaian kalimat deskriptif.
 Contoh :

PROGRAM persegipanjang
Program untuk menghitung luas persegipanjang.

ALGORITMA :
1. Masukkan/input panjang dan lebar persegipanjang.
2. Hitung luas persegipanjang dengan rumus :
Luas = Panjang x Lebar
3. Tampilkan luas persegipanjang.
FLOWCHART
 Flowchart berasal dari kata :
 Flow berarti aliran.
 Chart berarti gambar, diagram atau simbol-
simbol.
 Flowchart merupakan diagram alir yang
menggambarkan langkah-langkah pemecahan
masalah.
SIMBOL-SIMBOL DASAR FLOWCHART
 Flowchart di awali dengan simbol terminal :

Start atau Mulai

 Flowchart di akhiri dengan simbol terminal :

Finish atau Selesai

 Pembacaan data input :

Read …. atau Baca ….


SIMBOL-SIMBOL DASAR FLOWCHART
 Perencanaan data output :
Write …. atau Tulis ….

 Proses pengerjaan :

 Test terhadap suatu kondisi pengambilan keputusan :

 Pemberian nilai awal atau pengawalan lainnya :


SIMBOL-SIMBOL DASAR FLOWCHART
 Sub proses yang berupa suatu rutin :

 Penghubung flowchart pada halaman yang sama :

 Penghubung flowchart pada halaman yang berlainan :

 Arah aliran proses :


PSEUDOCODE
 Pseudocode berasal dari kata :
 Pseudo yang berarti imitasi atau
mirip atau menyerupai.
 Code yang berarti kode program.
 Pseudocode berarti kode yang mirip
dengan kode pemrograman yang
sebenarnya.
PSEUDOCODE
 Contoh :
PROGRAM persegipanjang
Program untuk menghitung luas persegipanjang.

DEKLARASI
panjang, lebar : integer
luas : integer

ALGORITMA :
read(p,l)
luas = panjang * lebar
write(luas)
Langkah-langkah Membentuk
Algoritma
1.Sequence process
Instruksi dikerjakan secara berurutan satu persatu
dimulai dari langkah pertama sampai terakhir
2.Selection process
Instruksi pemilihan proses (percabangan), sehingga
apabila memenuhi persyaratan tertentu maka instruksi
akan dikerjakan
contoh : jika pembayaran tunai diberi diskon 10%
Jika dilakukan secara kredit maka diskon 0 %.
(dalam pernyataan diatas, hanya boleh melakukan 1
instruksi dari 2 alternatif instruksi).
Lanjutan...
3. Iteration process
suatu instruksi yang dikerjakan berulang-
ulang selama beberapa kali selama masih
memenuhi suatu kondisi.
Studi Kasus
Buatlah Algoritma untuk memilih bilangan
terbesar dari 3 buah bilangan ?
Dengan bahasa natural
 Ambil bilangan pertama dan set maks sama dengan
bilangan pertama
 Ambil bilangan kedua dan bandingkan dengan maks
 Apa bila bilangan kedua lebih besar dari maks, set
maks sama dengan bilangan kedua
 Ambil blangan ketiga dan bandingan dengan maks
 Apabila bilangan ketiga lebih besar dari maks, set
maks sama dengan bilangan ketiga
 Variabel maks berisi bilangan terbesar. Tampilkan
hasilnya
Dengan Flowchart
Dengan Pseudocode
 Maks ←bilangan pertama
 if (maks < bilangan kedua)
 maks←bilangan kedua
 if (maks < bilangan ketiga)
 maks ← bilangan ketiga
Studi Kasus (2)
Algoritma TUKAR ISI BEJANA

Diberikan dua buah bejana A dan B,


bejana A berisi larutan berwarna merah,
bejana B berisi larutan berwarna biru.
Pertukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi
larutan berwarna biru dan bejana B berisi larutan berwarna merah.
Lanjutan...
algoritma :
 Tuangkan larutan dari bejana A ke dalam
bejana B
 Tuangkan larutan dari bejana B ke dalam
bejana A.
Apakah cara di atas BENAR ?
Apakah hasil yang didapat sesuai dengan
penyelesaian masalah?
Apa hasil yang didapat ?
Lanjutan (2)...
Algoritma TUKAR ISI BEJANA di atas tidak
menghasilkan pertukaran yang benar.
Langkah di atas tidak logis, hasil
pertukaran yang terjadi adalah
percampuran kedua larutan tersebut.
Penyelesaian
Untuk mempertukarkan isi duah bejana,
diperlukan sebuah bejana tambahan
sebagai tempat penampungan sementara,
misalnya bejana C.

A B C
Algoritma yang menghasikan pertukaran
yang benar sebagai berikut:
 Tuangkan larutan dari bejana A ke dalam
bejana C.
 Tuangkan larutan dari bejana B ke dalam
bejana A.
 Tuangkan larutan dari bejana C ke dalam
bejana B.
Latihan
 Seorang Petani akan berpergian ke kota dengan membawa seekor
kambing, Anjing dan Rumput Yang ketiganya memliki berat yang
tidak jauh berbeda, ditengah jalan petani harus menyebrangi
sungai dengan menggunakan perahu dan untuk melaluinya petani
tersebut tidak diperbolehkan membawa sekaligus bawaannya
mengingat kapasitas kekuatan perahu tersebut, dan untuk
melaluinya petani harus membawa satu persatu bawaannya .
Ditanya: berapa kali petani tersebut harus melalui sungai dengan
memperhatikan bahwa kambing makan rumput, anjing makan
kambing ?
 Bagaimana caranya untuk menyebrangkan tiga orang rahib yang
sedang dikejar oleh Tiga orang kanibal ke sisi pulau yang ada
diseberangnya
Dengan catatan :
Bila misionarisnya Lebih sedikit dari dari kanibal, maka misionaris
tersebut akan dimakannya.
 
Tugas
Buatlah algoritma (dengan bahasa natural):
1. Menampilkan bilangan ganjil dari 1
sampai dengan 10.
2. Menghitung jumlah deret : 1 + 2 + 3 + 4 +
.... + N
N = maksimum suatu nilai yang
dimasukkan.

Anda mungkin juga menyukai