Bab 1 pengantar logika algoritma

21
Pengertian Dasar Logika dan Algoritma

description

 

Transcript of Bab 1 pengantar logika algoritma

Page 1: Bab 1 pengantar logika algoritma

Pengertian Dasar Logika dan Algoritma

Page 2: Bab 1 pengantar logika 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].

Page 3: Bab 1 pengantar logika algoritma

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

Page 4: Bab 1 pengantar logika algoritma

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)

Page 5: Bab 1 pengantar logika algoritma

Tahap Penyelesaian Masalah

Page 6: Bab 1 pengantar logika algoritma

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.

Page 7: Bab 1 pengantar logika algoritma

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.

Page 8: Bab 1 pengantar logika algoritma

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”

Page 9: Bab 1 pengantar logika algoritma

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

 

Page 10: Bab 1 pengantar logika algoritma

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.

Page 11: Bab 1 pengantar logika algoritma

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

Page 12: Bab 1 pengantar logika algoritma

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.

Page 13: Bab 1 pengantar logika algoritma

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

Page 14: Bab 1 pengantar logika algoritma

2. Dengan diagram alur atau flowchart

Page 15: Bab 1 pengantar logika algoritma

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

Page 16: Bab 1 pengantar logika algoritma

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

Page 17: Bab 1 pengantar logika 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.

Page 18: Bab 1 pengantar logika 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.

Page 19: Bab 1 pengantar logika algoritma

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.

Page 20: Bab 1 pengantar logika algoritma

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

Page 21: Bab 1 pengantar logika algoritma

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.