P. 1
Logika Dan Algoritma

Logika Dan Algoritma

|Views: 2,455|Likes:
Published by nuri simarona
Pengantar mata kuliah logika dan algoritma pertemuan 1 dan 2.
Pengantar mata kuliah logika dan algoritma pertemuan 1 dan 2.

More info:

Published by: nuri simarona on Sep 09, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PPTX, PDF, TXT or read online from Scribd
See more
See less

12/11/2012

pdf

text

original

STMIK WIDYADHARMA PONTIANAK

SIKB 104 LOGIKA DAN ALGORITMA
NURI SIMARONA, ST

MATERI KULIAH
 Pendahuluan

Logika dan Algoritma  Diagram Alir (Flowchart)  Struktur Dasar Algoritma
Sequence Selection Looping / Repetetion

 Penyelesaian

Masalah dengan Algoritma

Referensi
 S.

E. Goodman, and S. T. Hedetriem, Introduction to The Design and Analysis of Algorithm, Mc Graw Hill.  Horowitz, Ellis., and Sahni, Sartaj., Fundamentals of Computer Algorithms, Computer Science Press, USA, 1988.
 Munir,

Rinaldi., Algoritma dan Pemrograman dalam Bahasa Pascal dan C, Edisi kedua (Revisi), buku1, Penerbit Informatika Bandung, 2003

Definisi Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis (Munir, 2002)  Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah (KBBI, 1988)

 Logis

merupakan kata kunci dalam algoritma.  Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar.

Ciri-ciri Penting Algoritma harus berhenti setelah mengerjakan Algoritma
sejumlah langkah tertentu. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (ambigu). Algoritma memiliki nol atau lebih masukan (input). Masukan ialah besaran yang diberikan kepada algoritma sebelum algoritma mulai bekerja. Algoritma mempunyai nol atau lebih keluaran (output). Keluaran adalah besaran yang memiliki hubungan dengan masukan. Algoritma harus efektif.

CONTOH 1: Algoritma TUKAR_ISI_BEJANA Diberikan dua buah bejana, A dan B; bejana A berisi larutan berwarna merah, bejana B berisi larutan berwarna biru. Pertukaran isi kedua bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah. DESKRIPSI 1. Tuangkan larutan dari bejana A ke dalam bejana C. 2. Tuangkan larutan dari bejana B ke dalam bejana A. 3. Tuangkan larutan dari bejana C ke dalam bejana B.

Bejana A

Bejana B

Bejana C

Keadaan Awal Sebelum Pertukaran:

PROSE S
Keadaan Akhir Setelah Pertukaran:

Proses Pertukaran
1. Tuangkan larutan dari bejana A ke dalam bejana C

2. Tuangkan larutan dari bejana B ke dalam bejana A

3. Tuangkan larutan dari bejana C ke dalam bejana B

Contoh 2:
Mencari akar bulat positif dari bilangan bulat (integer) positif a: 2. Masukkan bilangan bulat positif a 3. Berikan harga awal x sama dengan 1 4. Hitung y sebesar x * x 5. Jika y sama dengan a maka cetak x sebagai akar dari a. STOP 11.Tambah nilai x dengan 1 12.Pergi ke langkah 3.

Contoh 3:
Menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap. 2. Masukkan sebuah bilangan sembarang 3. Bagi bilangan tersebut dengan bilangan 2 4. Hitung sisa hasil bagi pada langkah 2. 5. Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil.

Penulisan Algoritma

Dalam bahasa natural (Bahasa Indonesia, Bahasa Inggris, dan bahasa manusia lainnya)
Tapi sering membingungkan (ambiguous)

Menggunakan flow chart (diagram alir)
Bagus secara visual akan tetapi repot kalau

algoritmanya panjang

Menggunakan pseudo-code
Sudah lebih dekat ke bahasa pemrograman,

namun sulit dimengerti oleh orang yang tidak mengerti pemrograman

Diagram Alir (Flowchart)
Bagan-bagan yang mempunyai alur yang menggambarkan langkah-langkah penyelesaian suatu masalah.  Merupakan cara penyajian dari suatu algoritma.  Ada 2 macam Flowchart :

urutan proses dalam sistem dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data. Program Flowchart urutan instruksi yang digambarkan dengan simbol tertentu untuk memecahkan masalah dalam suatu program.

System Flowchart

Simbol-simbol Flowchart

Lanjutan ....

Pembuatan Flowchart
Tidak ada kaidah yang baku. Flowchart = gambaran hasil analisa suatu masalah  Flowchart dapat bervariasi antara satu pemrogram dengan pemrogram lainnya.  Secara garis besar ada 3 bagian utama: – Input – Proses – Output
 

Lanjutan...
Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi singkat.  Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas.  Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END atau STOP.

Contoh 1: Flowchart untuk algoritma pencarian nilai maksimum dari 3 bilangan.

Algoritma dengan pseudocode
maks ← bilangan pertama if (maks < bilangan kedua)
maks ← bilangan kedua

if (maks < bilangan ketiga)
maks ← bilangan ketiga

2004

EL 2001 - Algoritma v.1.2

18

Contoh 2 : Flowchart dari algoritma penentuan bilangan ganjil/genap

1. Tiga pasang suami istri yang sedang menempuh perjalanan sampai ke sebuah sungai. Di situ mereka menemukan sebuah perahu kecil yang hanya bisa membawa tidak lebih dari dua orang setiap kali menyeberang. Penyeberangan sungai dirumitkan oleh kenyataan bahwa para suami sangat pencemburu dan tidak mau meninggalkan istri-istri mereka jika ada lelaki lain. Tulislah algoritma untuk menunjukkan bagaimana penyeberangan itu bisa dilakukan. 2. Buatlah algoritma untuk menghitung luas dan keliling lingkaran. Dengan masukan berupa jari-jari. 3. Buatlah flowchart dari algoritma pada soal no 2 di atas. 4. Buatlah algoritma untuk mengecek bilangan di antara 2 bilangan masukan, apakah sama ataukah lebih besar salah satunya, dan tampilkan hasilnya. 5. Buatlah flowchart dari algoritma pada soal no 4 di atas.

Latihan

Latihan
Tuliskan rumus-rumus berikut dalam notasi algoritma: a. b. c.

ALGORITMA DENGAN PSEUDO-CODE
Algoritma yang menggunakan instruksi menyerupai bahasa pemrograman, meliputi deklarasi dan deskripsi. Keuntungan menggunakan pseudo-code adalah memudahkan menerjemahan algoritma ke dalam bahasa pemrograman.

Contoh: Penulisan algoritma secara deskriptif dan pseudo-code

Contoh: Penulisan algoritma secara flowchart dan pseudo-code

Baca A

Cetak A

Read A Write A

a> hasil

If a > hasil Then ....

i ← 1, n

For i ← 1, n Do ....

Contoh: Algoritma untuk pertukaran data
Deklarasi: A, B, C : Integer L1 L2 L3 L4 L5 : : : : : Read A, B C←A A←B B←C Write A, B

start

Read A, B

C←A

C←A

C←A

Write A, B

End

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->