Bab 3 notasi algoritma

Post on 17-Dec-2014

6.247 views 45 download

description

 

Transcript of Bab 3 notasi algoritma

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 persegipanjangProgram untuk menghitung luas persegipanjang.

ALGORITMA :1. Masukkan/input panjang dan lebar persegipanjang.2. Hitung luas persegipanjang dengan rumus :

Luas = Panjang x Lebar3. 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 persegipanjangProgram untuk menghitung luas persegipanjang.

DEKLARASIpanjang, lebar : integerluas : integer

ALGORITMA :

read(p,l)luas = panjang * lebarwrite(luas)

Langkah-langkah Membentuk Algoritma1.Sequence process

Instruksi dikerjakan secara berurutan satu persatu dimulai dari langkah pertama sampai terakhir

2.Selection processInstruksi pemilihan proses (percabangan), sehingga apabila memenuhi persyaratan tertentu maka instruksi akan dikerjakancontoh : 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 processsuatu 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.