23
NOTASI ALGORITMA Oleh Dyah Darma Andayani

02 notasi algoritma

Embed Size (px)

Citation preview

Page 1: 02   notasi algoritma

NOTASI

ALGORITMA

Oleh Dyah Darma Andayani

Page 2: 02   notasi algoritma

PENDAHULUAN

Algoritma = Rancangan Program

Langkah-langkah pemecahan masalahditulis dalam notasi-notasi deskriptif yangdisebut dengan notasi algoritma.

Notasi algoritma dibuat sedemikiansehingga tidak tergantung dengan :

Bahasa pemrograman yang akandigunakan.

Komputer yang akan menjalankanprogram tersebut.

Page 3: 02   notasi algoritma

NOTASI ALGORITMA

Untaian kalimat deskriptif

Flowchart (diagram alir)

Pseudocode

Page 4: 02   notasi algoritma

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.

Page 5: 02   notasi algoritma

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.

Page 6: 02   notasi algoritma

SIMBOL-SIMBOL DASAR FLOWCHART

Flowchart di awali dengan simbol terminal :

Flowchart di akhiri dengan simbol terminal :

Pembacaan data input :

Read …. atau Baca ….

Finish atau Selesai

Start atau Mulai

Page 7: 02   notasi algoritma

SIMBOL-SIMBOL DASAR FLOWCHART

Perencanaan data output :

Proses pengerjaan :

Test terhadap suatu kondisi pengambilan keputusan :

Pemberian nilai awal atau pengawalan lainnya :

Write …. atau Tulis ….

Page 8: 02   notasi algoritma

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 :

Page 9: 02   notasi algoritma

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.

Page 10: 02   notasi algoritma

PSEUDOCODE

Contoh :

PROGRAM persegipanjang

Program untuk menghitung luas persegipanjang.

DEKLARASI

panjang, lebar : integer

luas : integer

ALGORITMA :

read(p,l)

luas = panjang * lebar

write(luas)

Page 11: 02   notasi algoritma

Langkah-langkah Membentuk

Algoritma1.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).

Page 12: 02   notasi algoritma

Lanjutan...

3. Iteration process

suatu instruksi yang dikerjakan berulang-

ulang selama beberapa kali selama masih

memenuhi suatu kondisi.

Page 13: 02   notasi algoritma

Studi Kasus

Buatlah Algoritma untuk memilih bilangan

terbesar dari 3 buah bilangan ?

Page 14: 02   notasi algoritma

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

Page 15: 02   notasi algoritma

Dengan Flowchart

Page 16: 02   notasi algoritma

Dengan Pseudocode

Maks ←bilangan pertama

if (maks < bilangan kedua)

maks←bilangan kedua

if (maks < bilangan ketiga)

maks ← bilangan ketiga

Page 17: 02   notasi algoritma

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.

Page 18: 02   notasi algoritma

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 ?

Page 19: 02   notasi algoritma

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.

Page 20: 02   notasi algoritma

Penyelesaian

Untuk mempertukarkan isi duah bejana,

diperlukan sebuah bejana tambahan

sebagai tempat penampungan sementara,

misalnya bejana C.

A B C

Page 21: 02   notasi algoritma

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.

Page 22: 02   notasi algoritma

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 jembatan

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.

Page 23: 02   notasi algoritma

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 = jumlah maksimum suatu nilai yang

dimasukkan.