PENGENALAN ALGORITMA DAN PEMROGRAMAN Pertemuan 1 MASALAH Adalah

  • Slides: 15
Download presentation
PENGENALAN ALGORITMA DAN PEMROGRAMAN Pertemuan 1

PENGENALAN ALGORITMA DAN PEMROGRAMAN Pertemuan 1

MASALAH Adalah pertanyaan atau tugas yang kita cari jawabannya. Setiap masalah memiliki satu atau

MASALAH Adalah pertanyaan atau tugas yang kita cari jawabannya. Setiap masalah memiliki satu atau lebih parameter yang membatasi ruang lingkupnya. Untuk menentukan parameter tersebut dibutuhkan analisa masalah.

ALGORITMA Adalah urutan langkah-langkah untuk memecahkan masalah. Pengertian dari beberapa literatur Deretan langkah-langkah komputasi

ALGORITMA Adalah urutan langkah-langkah untuk memecahkan masalah. Pengertian dari beberapa literatur Deretan langkah-langkah komputasi yang mentransformasikan data masukan menjadi keluaran. � Deretan instruksi yang jelas untuk memecahkan masalah, yaitu untuk memperoleh keluaran yang diinginkan dari suatu masukan dalam jumlah waktu yang terbatas. � Prosedur komputasi yang terdefenisi dengan baik yang menggunakan beberapa nilai sebagai masukan dan menghasilkan beberapa nilai yang disebut keluaran. Jadi, algoritma adalah deretan langkah komputasi yang mentransformasikan masukan menjadi keluaran. �

ALGORITMA Contoh-contoh Algoritma Langkah-langkah memasak suatu resep makanan. � Langkah-langkah pengerjaan pratikum kimia. �

ALGORITMA Contoh-contoh Algoritma Langkah-langkah memasak suatu resep makanan. � Langkah-langkah pengerjaan pratikum kimia. � Langkah-langkah pengisian pulsa prabayar. � 3 Faktor dalam Algoritma Problem – Problem Solver – Processor Lima sifat Algoritma � � � Selesai dalam jumlah langkah terbatas. Tidak memiliki arti ganda. Memiliki nol atau lebih input. Memiliki nol atau lebih output. Efektif.

SEJARAH ALGORITMA Algoritma berasal dari kata Algorism. Berasal dari nama penulis buku Arab yang

SEJARAH ALGORITMA Algoritma berasal dari kata Algorism. Berasal dari nama penulis buku Arab yang terkenal, yaitu Abu Ja’far Muhammad Ibnu Musa al. Khuwarizmi. al-Khuwarizmi dibaca oleh orang Barat menjadi algorism. Dikarenakan sering dikelirukannya algorism dengan arithmetic, terjadi perubahan akhiran -sm menjadi thm. Algorithm secara perlahan dan berangsur-angsur mulai dipakai sebagai metode perhitungan (komputasi) secara umum.

PROGRAM DAN PEMROGRAMAN Algoritma akan efektif jika dijalankan oleh sebuat pemroses (processor), dengan sifat

PROGRAM DAN PEMROGRAMAN Algoritma akan efektif jika dijalankan oleh sebuat pemroses (processor), dengan sifat : � Mengerti setiap langkah dalam algoritma, � Mengerjakan operasi yang bersesuaian dengan langkah tersebut. Algoritma yang ditulis dalam bahasa komputer = program. Bahasa komputer yang digunakan untuk menulis program = bahasa pemrograman. Orang yang membuat program = pemrogram. Kegiatan merancang dan menulis program disebut = pemrograman.

BELAJAR MEMPROGRAM DAN BELAJAR BAHASA PEMROGRAMAN Apa perbedaannya? � Belajar memprogram: Pemecahan Masalah -Strategi

BELAJAR MEMPROGRAM DAN BELAJAR BAHASA PEMROGRAMAN Apa perbedaannya? � Belajar memprogram: Pemecahan Masalah -Strategi -Metodologi -Sistematika � Notasi yang telah disepakati Belajar bahasa pemrograman: Belajar memakai suatu bahasa komputer, Aturan tata bahasanya, Instruksi-instruksinya, Tata cara pengoperasian compiler-nya, Dan memanfaatkan instruksi-instruksi tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja. Hasil vs Metode?

PENGGOLONGAN BAHASA PEMROGRAMAN Berdasarkan tujuan aplikasinya � Bertujuan Cobol, Fortran, Assembly, Prolog, Simscript, etc

PENGGOLONGAN BAHASA PEMROGRAMAN Berdasarkan tujuan aplikasinya � Bertujuan Cobol, Fortran, Assembly, Prolog, Simscript, etc � Bertujuan khusus (specific purpose PL) umum (general purpose PL) Pascal, Basic, C, C++, etc Berdasarkan kemiripan bahasa � Bahasa Bentuk “manusiawi” dari bahasa mesin � Bahasa tingkat rendah tingkat tinggi Lebih “manusiawi” dan dekat ke bahasa manusia

NOTASI ALGORITMIK Terbagi menjadi 3 � Notasi I : menyatakan langkah-langkah algoritma dengan untaian

NOTASI ALGORITMIK Terbagi menjadi 3 � Notasi I : menyatakan langkah-langkah algoritma dengan untaian kalimat deskriptif. � Notasi II : menggunakan bagan alir (flowchart). � Notasi III : menggunakan pseudo-code.

KALIMAT DESKRIPTIF PROGRAM Euclidean Diberikan dua buah bilang bulat tak-negatif m dan n (m

KALIMAT DESKRIPTIF PROGRAM Euclidean Diberikan dua buah bilang bulat tak-negatif m dan n (m ≥ n). Algoritma Euclidean mencari pembagi bersama terbesar, gcd, dari kedua bilangan tersebut, yaitu bilangan bulat positif terbesar yang habis membagi m dan n. ALGORITMA : 1. Jika n = 0 maka m adalah jawabannya; stop. tetapi jika n ≠ 0, lanjutkan ke langkah 2. 1. Bagilah m dengan n dan misalkan r adalah sisanya. 2. Ganti nilai m dengan nilai n dengan nilai r, lalu ulang kembali langkah 1.

FLOWCHART mulai baca m dan n n=0 Tidak Ya r = m MOD n

FLOWCHART mulai baca m dan n n=0 Tidak Ya r = m MOD n m=n n=r tulis m selesai

PSEUDO-CODE PROGRAM Euclidean Program untuk mencari gcd dari dua buah bilangan bulat tak-negatif m

PSEUDO-CODE PROGRAM Euclidean Program untuk mencari gcd dari dua buah bilangan bulat tak-negatif m dan n (m ≥ n). Gcd dari m dan n adalah bilangan bulat positif terbesar yang habis membagi m dan n. DEKLARASI : m, n : integer r : integer { bilangan bulat yang akan dicari pbt-nya } { sisa hasil bagi } ALGORITMA : read (m, n) {m≥n} while n ≠ 0 do r ← m MOD n { hitung sisa hasil pembagian } m←n n←r endwhile { kondisi selesai pengulangan : n = 0, maka gcd(m, n) = m } write (m)

PARADIGMA PEMROGRAMAN Pemrograman Prosedural / Terstruktur Berdasarkan urutan-urutan, sekuensial. Program adalah suatu rangkaian prosedur

PARADIGMA PEMROGRAMAN Pemrograman Prosedural / Terstruktur Berdasarkan urutan-urutan, sekuensial. Program adalah suatu rangkaian prosedur untuk memanipulasi data. Prosedur merupakan kumpulan instruksi yang dikerjakan secara berurutan. � Harus mengingat prosedur mana yang sudah dipanggil dan apa yang sudah diubah. � Program dapat dibagi-bagi menjadi prosedur dan fungsi. � Contoh : PASCAL dan C. � � Pemrograman Fungsional � � Berdasarkan teori fungsi matematika. Fungsi merupakan dasar utama program. Pemrograman Modular Pemrograman ini membentuk banyak modul. Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri sendiri. � Sebuah program dapat merupakan kumpulan modul-modul. � Contoh : MODULA-2 atau ADA. � �

PARADIGMA PEMROGRAMAN Pemrograman Berorientasi Objek Pemrograman berdasarkan prinsip objek, dimana objek memiliki data /

PARADIGMA PEMROGRAMAN Pemrograman Berorientasi Objek Pemrograman berdasarkan prinsip objek, dimana objek memiliki data / variable / property dan method / event / procedure yang dapat dimanipulasi. � Contoh : C++, Object Pascal, Java, dll. � Pemrograman Berorientasi Fungsi Pemrograman ini berfokus pada suatu fungsi tertentu saja. Sangat tergantung pada tujuan pembuatan bahasa pemrograman ini. � Contoh : SQL, HTML, XML, dll. � Pemrograman Deklaratif Pemrograman ini mendeskripsikan suatu masalah dengan pernyataan daripada memecahkan masalah dengan implementasi algoritma. � Contoh : PROLOG. �

SOAL LATIHAN Tuliskan 3 contoh algoritma dalam kehidupan sehari-hari beserta langkah-langkahnya. Misalkan terdapat dua

SOAL LATIHAN Tuliskan 3 contoh algoritma dalam kehidupan sehari-hari beserta langkah-langkahnya. Misalkan terdapat dua buah ember, masing-masing mempunyai volume 5 liter dan 3 liter. Tuliskan algoritma untuk memperoleh air sebanyak 1 liter dengan hanya menggunakan kedua ember tersebut.