Pengantar Algoritma dan Pemrograman Elin Haerani ST M

  • Slides: 30
Download presentation
Pengantar Algoritma dan Pemrograman Elin Haerani, ST, M. Kom

Pengantar Algoritma dan Pemrograman Elin Haerani, ST, M. Kom

Sejarah Algoritma Asal kata Algoritma berasal dari nama Abu Ja’far Mohammed Ibnu Musa al.

Sejarah Algoritma Asal kata Algoritma berasal dari nama Abu Ja’far Mohammed Ibnu Musa al. Khowarizmi, ilmuan Persia yang menulis kitab al jabr w’al-muqabala (rules of restoration and reduction) sekitar tahun 825 M

Algoritma Dalam Kehidupan ¡ ¡ Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang

Algoritma Dalam Kehidupan ¡ ¡ Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang diacu dalam terminologi algoritma. Namun algoritma juga digunakan dalam kehidupan sehari-hari, contohnya resep makanan. Di dalam resep makanan terdapat langkah -langkah yang merupakan algoritma. Selain itu masih banyak contoh algoritma yang lain.

Con’t ¡ ¡ Dalam kehidupan sehari-haripun banyak terdapat proses yang dinyatakan dalam suatu algoritma.

Con’t ¡ ¡ Dalam kehidupan sehari-haripun banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan langkahlankah membuat masakan. Bila langkahnya tidak logis, tidak dapat dihasilkan masakan yang diinginkan. Ibuibu yang mencoba suatu resep masakan membaca satu per satu langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca.

Analogi : � Jika seseorang ingin mengirim surat kepada kenalannya di tempat lain, langkah

Analogi : � Jika seseorang ingin mengirim surat kepada kenalannya di tempat lain, langkah yang harus dilakukan adalah: Langkah : � Menulis surat � Surat dimasukkan ke dalam amplop tertutup � Amplop dikasih alamat penerima dan pengirim � Amplop ditempeli perangko secukupnya. � Pergi ke Kantor Pos terdekat untuk mengirimkannya

Pengantar Algoritma Jadi dalam menjalankan algoritma harus: � Mengerti setiap langkah dalam Algoritma �

Pengantar Algoritma Jadi dalam menjalankan algoritma harus: � Mengerti setiap langkah dalam Algoritma � Mengerjakan operasi yang bersesuaian dengan langkah tersebut.

Pengantar Algoritma � Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa

Pengantar Algoritma � Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman disebut dengan program. � Jadi program adalah perwujudan atau implementasi teknis Algoritma yang ditulis dalam bahasa pemrogaman tertentu sehingga dapat dilaksanakan oleh komputer.

Apa Itu Algoritma ? l Definisi : ¡Urutan langkah-langkah untuk memecahkan masalah yang disusun

Apa Itu Algoritma ? l Definisi : ¡Urutan langkah-langkah untuk memecahkan masalah yang disusun secara sistematis dan logis. ¡Kamus Besar Bahasa Indonesia: Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah. l Algoritma dibutuhkan untuk memerintah komputer mengambil langkah-langkah tertentu dalam menyelesaikan masalah.

Contoh Algoritma TUKAR ISI BEJANA Diberikan dua buah bejana A dan B, bejana A

Contoh Algoritma TUKAR ISI BEJANA Diberikan dua buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi larutan berwarna biru. Pertukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah. DESKRIPSI : – Tuangkan larutan dari bejana A ke dalam bejana B – Tuangkan larutan dari bejana B ke dalam bejana A.

BENAR ATAU SALAH ? ? ?

BENAR ATAU SALAH ? ? ?

Jawabannya : Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran yang benar. Langkah

Jawabannya : Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran yang benar. Langkah di atas tidak logis, hasil pertukaran yang terjadi adalah percampuran kedua larutan tersebut. Untuk mempertukarkan isi duah bejana, diperlukan sebuah bejana tambahan sebagai tempat penampungan sementara, misalnya bejana C. Maka algoritma untuk menghasilkan pertukaran yang benar adalah sebagai berikut :

Apa Itu Program/Pemrograman? Definisi l Kumpulan instruksi-instruksi tersendiri yang biasanya disebut source code yang

Apa Itu Program/Pemrograman? Definisi l Kumpulan instruksi-instruksi tersendiri yang biasanya disebut source code yang dibuat oleh programmer (pembuat program). l Program : Realisasi dari Algoritma. Program = Algoritma + Bahasa

Bahasa Pemrograman � Adalah alat untuk membuat program Contoh: C, C++, C#, Pascal, Basic,

Bahasa Pemrograman � Adalah alat untuk membuat program Contoh: C, C++, C#, Pascal, Basic, Perl, PHP, ASP, JHP, Java, dll. Perbedaan: cara memberikan instruksi (sintaks) � Persamaan: bertujuan menghasilkan output yang sama �

Paradigma Pemrograman � � � Pemrograman Prosedural / Terstruktur ◦ Berdasarkan urutan-urutan, sekuensial ◦

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 dibagai-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 Obyek ◦ Pemrograman berdasarkan prinsip obyek, dimana

Paradigma Pemrograman � � � Pemrograman Berorientasi Obyek ◦ Pemrograman berdasarkan prinsip obyek, dimana obyek memiliki data/variabel/property dan method/event/prosedur yang dapat dimanipulasi ◦ Contoh: C++, Object Pascal, dan Java. Pemrograman Berorientasi Fungsi ◦ Pemrograman ini berfokus pada suatu fungsi tertentu saja. Sangat tergantung pada tujuan pembuatan bahasa pemrograman ini. ◦ Contoh: SQL (Structured Query Language), HTML, XML dan lain-lain. Pemrograman Deklaratif ◦ Pemrograman ini mendeskripsikan suatu masalah dengan pernyataan daripada memecahkan masalah dengan implementasi algoritma. ◦ Contoh: PROLOG

Siklus Hidup Perangkat Lunak (Software) � Dilihat dari Struktur Sistem Komputer dan Siklus diatas,

Siklus Hidup Perangkat Lunak (Software) � Dilihat dari Struktur Sistem Komputer dan Siklus diatas, Algoritma Pemrograman menempati posisi dibagian implementasi karena bagian implementasi merupakan bagian dimana pemrogram melakukan proses coding (pembuatan program).

Mengapa Algoritma ? l Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun.

Mengapa Algoritma ? l Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun. l Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. l Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.

Syarat Algoritma Baik? l Tingkat kepercayaannya tinggi (realibility) Hasil yang diperoleh dari proses harus

Syarat Algoritma Baik? l Tingkat kepercayaannya tinggi (realibility) Hasil yang diperoleh dari proses harus berakurasi tinggi dan benar. l Pemrosesan yang efisien (cost rendah) Proses harus diselesaikan secepat mungkin dan frekuensi kalkulasi yang sependek mungkin. l Sifatnya general Bukan sesuatu yang hanya untuk menyelesaikan satu kasus saja, tapi juga untuk kasus lain yang lebih general.

l Bisa dikembangkan (expandable) Haruslah sesuatu yang dapat kita kembangkan lebih jauh berdasarkan perubahan

l Bisa dikembangkan (expandable) Haruslah sesuatu yang dapat kita kembangkan lebih jauh berdasarkan perubahan requirement yang ada. l Mudah dimengerti Siapapun yang melihat, dia akan bisa memahami algoritma Anda. Susah dimengertinya suatu program akan membuat susah di-maintenance (kelola). l Portabilitas yang tinggi (portability) Bisa dengan mudah diimplementasikan di berbagai platform komputer. l Precise (tepat, betul, teliti)

l Efektif Tidak boleh ada instruksi yang tidak mungkin dikerjakan oleh pemroses yang akan

l Efektif Tidak boleh ada instruksi yang tidak mungkin dikerjakan oleh pemroses yang akan menjalankannya. l Harus terminate Jalannya algoritma harus ada kriteria berhenti. l Output yang dihasilkan tepat.

Langkah Pembuatan Program Mendefinisikan masalah a. Kondisi awal, yaitu input yang tersedia. b. Kondisi

Langkah Pembuatan Program Mendefinisikan masalah a. Kondisi awal, yaitu input yang tersedia. b. Kondisi akhir, yaitu output yang diinginkan. c. Data lain yang tersedia. d. Operator yang tersedia. e. Syarat atau kendala yang harus dipenuhi.

Tahap Penyelesaian Masalah analisis Model Algoritma analisis Program Eksekusi Hasil Data

Tahap Penyelesaian Masalah analisis Model Algoritma analisis Program Eksekusi Hasil Data

ISTILAH � Program berisi urutan langkah-langkah penyelesaian masalah. � Program ditulis dengan menggunakan bahasa

ISTILAH � Program berisi urutan langkah-langkah penyelesaian masalah. � Program ditulis dengan menggunakan bahasa pemrograman. � Orang yang membuat program disebut pemrogram (programmer). � Kegiatan merancang dan menulis program disebut pemrograman.

Belajar memprogram ≠ Belajar bahasa pemrograman

Belajar memprogram ≠ Belajar bahasa pemrograman

Suatu Algoritma yg terbaik (The Best): “Suatu algoritma harus menghasilkan output yg tepat guna

Suatu Algoritma yg terbaik (The Best): “Suatu algoritma harus menghasilkan output yg tepat guna (efektif) dlm waktu yg relatif singkat & penggunaan memori yg relatif sedikit (efesien) dgn langkah yg berhingga & prosedurnya berakhir baik dlm keadaan diperoleh suatu solusi ataupun tdk ada solusinya. “

OLEH 2 & LATIHAN

OLEH 2 & LATIHAN

Oleh-1 � Buatlah bahasa algoritma dengan menggunakan natural (bahasa sehari-hari / pseudocode ) 1.

Oleh-1 � Buatlah bahasa algoritma dengan menggunakan natural (bahasa sehari-hari / pseudocode ) 1. Buat langkah untuk melakukan penggantian ban mobil yang pecah ( tanpa ada masalah / syarat ). 2. Dari Soal diatas dikembangkan kembali, mis : bila ban serep kempes atau ban serep bocor.

Oleh-2 � Buatlah algoritma (dengan bahasa natural) Kemudian sadur ke dalam bahasa pemrograman Java

Oleh-2 � Buatlah algoritma (dengan bahasa natural) Kemudian sadur ke dalam bahasa pemrograman Java 1. Menampilkan bilangan ganjil dari 1 sampai dengan 10. 2. Menghitung jumlah deret : 1 + 2 + 3 + 4 +. . + N N = jumlah maksimum suatu nilai yang dimasukkan.

Filosofi Oleh-Oleh Sungguh. . . Oleh – oleh ini, sama sekali tidak memiliki tujuan

Filosofi Oleh-Oleh Sungguh. . . Oleh – oleh ini, sama sekali tidak memiliki tujuan untuk memberatkan anda, tetapi oleh ini dimaksudkan agar anda belajar dan tentunya dengan ketekunan anda, Anda akan meraih sukses dan cita-cita anda. SELAMAT BERJUANG !!!

Wassalam Terimakasih

Wassalam Terimakasih