02 notasi algoritma

Post on 04-Jul-2015

463 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

NOTASI

ALGORITMA

Oleh Dyah Darma Andayani

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.

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 :

Flowchart di akhiri dengan simbol terminal :

Pembacaan data input :

Read …. atau Baca ….

Finish atau Selesai

Start atau Mulai

SIMBOL-SIMBOL DASAR FLOWCHART

Perencanaan data output :

Proses pengerjaan :

Test terhadap suatu kondisi pengambilan keputusan :

Pemberian nilai awal atau pengawalan lainnya :

Write …. atau Tulis ….

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

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

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

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.

top related