Bab 1 pengantar logika algoritma

Post on 18-Dec-2014

7.414 views 9 download

description

 

Transcript of Bab 1 pengantar logika algoritma

Pengertian Dasar Logika dan Algoritma

Pengertian Dasar

LOGIKAPertama kali diperkenalkan oleh Aristoteles (384 – 322 SM)Logika berasal dari kata Yunani kuno λόγος (logos) yang berarti hasil pertimbangan akal pikiran yang diutarakan lewat kata dan dinyatakan dalam bahasa. Sebagai ilmu, logika disebut dengan logike episteme (Latin: logica scientia) atau ilmu logika (ilmu pengetahuan) yang mempelajari kecakapan untuk berpikir secara lurus, tepat, dan teratur[1].

Pengertian Dasar (2)

ALGORITMAAlgoritma pertama kali diperkenalkan Oleh Ahli Matematika : Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi.Seorang Ilmuwan Persia yang menulis kitab Al jabr Muqabala (Rules of restoration and Reduction) sekitar tahun 825 M

DefenisiDEFENISI LOGIKA : Penalaran atau bentuk pemikiran Ilmu yang memberikan prinsip-prinsip yang harus

diikuti agar dapat berpikir valid menurut aturan yang berlaku.

DEFENISI ALGORITMA : Langkah-langkah yang dilakukan agar solusi

masalah dapat diperoleh. Suatu prosedur yang merupakan urutan langkah-

langkah yang berintegrasi Suatu metode khusus yang digunakan untuk

menyelesaikan sebuah masalah (Webster Dictionary)

Tahap Penyelesaian Masalah

KRITERIA PEMILIHAN ALGORITMA1. Ada output: mengacu pada definisi algoritma, suatu

algoritma haruslah mempunyai output yang harus merupakan solusi dari masalah yang sedang diselesaikan.

2. Efektifitas dan Efisiensi ikatakan efektif jika algoritma tersebut menghasilkan suatu solusi yang sesuai dengan masalah yang diselesaikan dalam arti algoritma harus tepat guna.Dikatakan efisiensi jika waktu proses suatu algoritma relatif lebih singkat dan penggunaan memori komputernya lebih sedikit.

3. Jumlah langkahnya berhingga : maksudnya adalah barisan instruksi yang dibuat harus dalam suatu urutan tertentu atau harus berhingga agar masalah yang dihadapi dapat diselesaikan dengan tidak memerlukan waktu relatif lama.

KRITERIA (2)4. Berakhir à (Semi Algoritma) : proses didalam mencari

penyelesaian suatu masalah harus berhenti dan berakhir dengan hasil akhir yang merupakan solusinya atau berupa informasi yang tidak diketemukan solusinya. Artinya baik dalam kondisi solusi ada atau tidak ada, proses akan tetap harus berakhir dan berhenti. Istilah lain dalam algoritma dikenal sebagai SEMI ALGORITMA, yaitu suatu prosedur yang hanya akan berhenti jika mempunyai atau menghasilkan solusi, sedangkan jika tidak menghasilkan solusi, maka prosedur tersebut akan berjalan tanpa henti.

5. Terstruktur : yaitu urutan barisan langkah-langkah yang digunakan harus disusun sedemikian rupa agar proses penyelesaian tidak berbelit-belit sedemikian sehingga bagian-bagian proses dapat dibedakan dengan jelas mana bagian input, proses dan output sehingga memudahkan user melakukan pemeriksaan ulang.

KESIMPULAN KRITERIA

Suatu Algoritma yang terbaik(The Best) : “Suatu algoritma harus menghasilkan output yan tepat guna(efektif) dalam waktu yang relatif singkat & penggunaan memori yang relatif sedikit(efisien) dengan langkah yang berhingga & prosedurnya berakhir baik dalam keadan diperoleh suatu solusi ataupun tidak ada solusinya”

Dalam bidang komputer, algoritma sangat diperlukan dalam menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris. Tanpa algoritma yang dirancang baik maka proses pemrograman akan menjadi salah, rusak, atau lambat dan tidak efisien.

Algoritma Di butuhkan untuk memerintah computer mengambil langkah-langkah tertentu untuk menyelesaikan masalahAlgoritma Pemrograman ProgramAgar algoritma dapat memerintah (diproses) komputer, maka dirubah menjadi bentuk program (melalui proses pemrograman).

 

Contoh:A. Algoritma untuk mengirimkan surat1. Tulis surat pada secarik kertas surat2. Ambil sampul surat atau amplop3. Masukkan surat ke dalam amplop4. Tutup amplop surat dengan lem perekat5. Tulis alamat surat yang dituju, jika tidak diingat, lebih

dahulu ambil buku alamat & cari alamat yang dituju, lalu tulis alamat tersebut pada amplop surat

6. Tempelkan perangko pada amplop surat

7. Bawa surat ke kantor pos untuk diserahkan pada pegawai pos atau menuju ke bis surat untuk memasukkan surat ke

dalam kotak/bis surat.

B. Algoritma untuk menentukan bilangan akar kuadrat dari suatu bilangan bulat positif yang diinput.

1. Baca bilangan bulat positif yang diinput, sebut saja sebagai A.

2. Dinyatakan Nilai B adalah 03. Jika Nilai C sama dengan Nilai A, maka Nilai B

adalah Akar dari Nilai A, lalu stop4. Jika tidak, maka nilai B akan bertambah 15. Kembali ke langkah pada No.3

Tahapan Analisa Algoritma

1.Bagaimana merencanakan suatu algoritmaDengan mendefinisikan masalah.Contoh : Permasalahan menghitung luas lingkaran, dengan data yang diketahui adalah diameter lingkaran.Rumus : ∏ . r2 dengan Phi = 3.14 atau 22/7.

Tahapan(2)

2.Bagaimana menyatakan sebuah algoritma

1. Dengan bahasa semu (pseudocode)suatu cara penulisan algoritma agar ide dan logika dari algoritma dapat disampaikan/diekspresikan menggunakan gaya bahasa pemrograman pemrograman tertentu.Contoh : Untuk mengitung Luas Segitiga:1. Masukan Nilai Alas2. Masukan Nilai Tinggi3. Hitung Luas = (Alas * Tinggi)/24. Cetak Luas

2. Dengan diagram alur atau flowchart

3. Dengan Statement Program/Penggalan ProgramContoh:Read AlasRead TinggiLuas=(Alas*Tinggi)/2Write(luas)

3. Bagaimana validitas suatu algoritmaYakni jika penyelesaian memenuhi solusi yang sebenarnya, artinya solusi yang didapat merupakan penyelesaian suatu masalah dan bukannya membuat masalah baru.

4. Bagaimana menganalisa suatu algoritmaCaranya melihat running time atau waktu tempuh yang digunakan dalam menyelesaikan masalah serta jumlah memori yang digunakan dalam penyelesaian masalah tersebut.

5. Bagaimana menguji program dari suatu algoritma

Tahap Proses Uji Algoritmaa. Fase Debugging

yaitu fase dari suatu proses program eksekusi yang akan melakukan koreksi terhadap kesalahan program. Yang dimaksud disni adalah error atau salah dalam penulisan program baik logika maupun sintaksnya.

b. Fase Profillingyaitu fase yang akan bekerja jika program tersebut sudah benar atau telah melalui proses pada fase debugging. Fase ini bekerja untuk melihat dan mengukur waktu tempuh atau running time yang diperlukan serta jumlah memori/storage yang digunakan dalam menyelesaikan suatu algoritma.

Analisis Suatu Algoritma

(Untuk melihat faktor efisiensi & efektifitas dari algoritma tersebut), dapat dilakukan terhadap suatu algoritma dengan melihat pada:- Waktu tempuh (Running Time) dari suatu algoritma: adalah satuan waktu yang ditempuh atau diperlukan oleh suatu algoritma dalam menyelesaikan suatu masalah.Hal-hal yang dapat mempengaruhi daripada waktu tempuh adalah: banyaknya langkah, besar dan jenis input data, jenis operasi, komputer dan kompilator.

Jumlah Memori Yang digunakanbanyaknya langkah yang digunakan dan jenis variabel data yang dipakai dalam suatu algoritma akan sangat mempengaruhi penggunaan memori. Dalm hal ini, diharapkan dapat memperkirakan seberapa banyak kebutuhan memori yang diperlukan selama proses berlangsung hingga proses selesai dikerjakan. Dengan demikian, dapat disiapkan storage yang memadai agar proses suatu algoritma berjalan tanpa ada hambatan atau kekurangan memori.

Sifat-sifat Algoritma

1. Banyak langkah instruksi harus berhingga (finite)

2. Langkah atau instruksi harus jelas.(definite)

3. Proses harus jelas dan mempunyai batasan.

4. Input dan output harus mempunyai batasan.

5. Efektifitas6. Adanya ruang lingkup

Latihan

Gunakan bahasa sehari-hari/pseudocode :

1. Buat algoritma untuk mengirim email kepada teman dengan asumsi sudah mempunyai alamat email.

2. Buat algoritma untuk meminjam buku di perpustakaan

3. Buat algoritma untuk membeli buku di sebuah toko buku.