Pemrograman Komputer Pendahuluan Komputer Mesin pintar Fakta Komputer

  • Slides: 18
Download presentation
Pemrograman Komputer

Pemrograman Komputer

Pendahuluan • Komputer ≠ Mesin ‘pintar’ • Fakta: - Komputer vs Gary Kasparov -

Pendahuluan • Komputer ≠ Mesin ‘pintar’ • Fakta: - Komputer vs Gary Kasparov - Komputer dapat meramal - Film Komputer = alat bantu Komputer perlu instruksi yang ‘dimasukkan’ ke dalam komputer Instruksi = program

 • Instruksi harus ditulis dalam suatu bahasa komputer • Bahasa untuk ‘berkomunikasi’ dengan

• Instruksi harus ditulis dalam suatu bahasa komputer • Bahasa untuk ‘berkomunikasi’ dengan komputer = bahasa pemrograman • Bahasa pemrograman: - Bahasa tingkat rendah : primitif : sulit dipahami - Bahasa tingkat tinggi : bahasa manusia : bahasa inggris : mudah dipelajari

 • Dahulu: sebuah bahasa pemrograman hanya untuk sebuah sistem operasi tertentu • Sekarang:

• Dahulu: sebuah bahasa pemrograman hanya untuk sebuah sistem operasi tertentu • Sekarang: sebaliknya Ditekankan pada sebuah design suatu pemecahan masalah. Design ini berisi langkah-langkah untuk mencapai penyelesaian.

 • Urutan langkah-langkah yang sistematis untuk menyelesaikan sebuah masalah algoritma. • Notasi untuk

• Urutan langkah-langkah yang sistematis untuk menyelesaikan sebuah masalah algoritma. • Notasi untuk menuliskan algoritma notasi algoritmik. • Notasi algoritmik ≠ Notasi bahasa pemrograman.

Algoritma • ≠ Logaritma • Algorism dari buku Arab Abu Ja’far Muhammad ibnu Musa

Algoritma • ≠ Logaritma • Algorism dari buku Arab Abu Ja’far Muhammad ibnu Musa al-Khuwarizmi • al-Khuwarizmi algorism : proses menghitung dengan angka arab Algorism Algorithm Algoritma

 • 1950 ‘algoritma Euclidean’ (Euclid’s algorithm) : proses untuk menemukan pembagi bersama terbesar

• 1950 ‘algoritma Euclidean’ (Euclid’s algorithm) : proses untuk menemukan pembagi bersama terbesar (common greatest divisor) dari dua bilangan bulat. “Diberikan dua buah bilangan bulat positif m dan n (m ≥ n). Carilah pembagi bersama terbesar (pbt) dari kedua bilangan tersebut, yaitu bilangan bulat positif terbesar yang habis membagi m dan n. ”

 • Langkah-langkah: 1. Bagilah m dengan n. Kemudian misalkan r adalah sisanya. 2.

• Langkah-langkah: 1. Bagilah m dengan n. Kemudian misalkan r adalah sisanya. 2. Jika r = 0 maka n adalah jawabannya; stop. Tetapi jika r ≠ 0, lanjutkan ke langkah 3 3. Ganti nilai m dengan nilai n, dan ganti nilai n dengan r, lalu ulangi langkah 1. #Contoh m = 30, n = 12

Contoh: m=30 , n=12 1. Hitung m/n = 30/12 = 2, sisanya r =

Contoh: m=30 , n=12 1. Hitung m/n = 30/12 = 2, sisanya r = 6 2. Karena r = 6 ≠ 0, maka lanjutkan ke lankah 3. 3. Nilai m = n = 12, dan n = r = 6. Kembali ke langkah 1. 1. Hitung m/n = 12/6 = 2, sisanya r = 0 2. Karena r = 0, maka n = 6 adalah jawabannya. Stop

Definisi • Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kamus

Definisi • Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kamus Besar Bahasa Indonesia, 1998 Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah.

Logis nilai kebenarannya harus dapat ditentukan, benar atau salah. Langkah tidak benar hasil pasti

Logis nilai kebenarannya harus dapat ditentukan, benar atau salah. Langkah tidak benar hasil pasti salah

Contoh A B Kita ingin menukar isi kedua bejana itu sedemikian sehinga bejana A

Contoh A B Kita ingin menukar isi kedua bejana itu sedemikian sehinga bejana A berisi larutan biru dan bejana B berisi larutan merah.

Algoritma TUKAR ISI BEJANA Langkah-langkah: 1. Tuangkan larutan dari bejana A ke dalam bejana

Algoritma TUKAR ISI BEJANA Langkah-langkah: 1. Tuangkan larutan dari bejana A ke dalam bejana B 2. Tuangkan larutan dari bejana B ke dalam bejana A

Tidak Logis !!! Algoritma salah !! Hasil tidak tercapai !!

Tidak Logis !!! Algoritma salah !! Hasil tidak tercapai !!

Solusi: Kita memerlukan bejana tambahan, bejana C Algoritma: 1. Tuangkan larutan dari bejana A

Solusi: Kita memerlukan bejana tambahan, bejana C Algoritma: 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

Logis !!! Algoritma Benar !!! Hasil tercapai !!!

Logis !!! Algoritma Benar !!! Hasil tercapai !!!

Ciri penting Algoritma Donald E. Knuth, The Art of Computer Programming 1. Algoritma harus

Ciri penting Algoritma Donald E. Knuth, The Art of Computer Programming 1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. Program yang tidak pernah berhenti algoritma salah. 2. Setiap langkah harus didefinisikan dengan tepat dan tidak ambiguous. “bagilah p dengan beberapa buah bil. bulat positif” “bagilah p dengan 10 buah bil. bulat positif”

Ciri penting Algoritma 3. Algoritma memiliki nol atau lebih masukan (input) besaran yg diberikan

Ciri penting Algoritma 3. Algoritma memiliki nol atau lebih masukan (input) besaran yg diberikan ke algoritma sebelum algoritma mulai bekerja. 4. Algoritma memiliki nol atau lebih keluaran (output). bisa mempunyai hubungan dengan input. 5. Algoritma harus efektif.