Perkuliahan I Pengantar Algoritma dan pemograman Algoritma 1. Pengertian Algoritma Algoritma adalah urutan logis langkah-langkah penyelesaian suatu masalah Algoritma berasal dari kata penulis buku Arab terkenal Abu Ja’far Muhammad ibnu Musa Al-Khuwarizmi. (Oleh orang Barat di baca algorism), dalam bahasa indonesia menjadi algoritma Contoh. membuat Kue 1. 2. 3. 4. Sediakan bahan-bahan Olah adonan Letakan di atas kompor Nyalakan kompor Contoh Seorang pemuda tiba di tepi sebuah sungai. Pemuda tersebut membawa seekor kambing, seekor srigala dan sekerangjang sayur. Mereka bermaksud menyebrangi sungai dengan sebuah perahu yang hanya memuat dua beban. Masalahnya timbul karena jika srigala yang terlebih dahulu dibawa, maka sayur akan habis dimakan kambing. 2. Ciri-ciri Algoritma Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak bermakna ganda (ambiguous) Algoritma memiliki masukan. Masukan ialah besaran yang diberikan kepada algoritma Algoritma mempunyai keluaran (output). Keluaran ialah besaran yang memiliki hubungan dengan masukan. Setiap langkah algoritma yang dibuat harus efektif. Pemograman 1. Pengertian Pemograman Algoritma + struktur data (bahasa pemograman ) = pemograman 2. Mekanisme pemgoraman Algoritma Translasi Bahasa Tingkat Tinggi Kompilasi Bahasa Mesin Intepretasi CPU Operasi 3. Langkah-langkah pemograman Mendefinisikan masalah Memahami persoalan, menentukan input dan output, seberapa kompleks program yang akan dibuat Menentukan solusi penyelesaian bagaimana program seharusnya dibuat. Jika program terlalu banyak, maka dipecah menjadi beberapa modul Menentukan algoritma berdasarkan algoritma berdasarkan kebutuhan program Menulis program Menguji program Menuliskan dokumentasi Merawat program 4. Bahasa Pemograman 1. Berdasarkan aplikasi: a. Bahasa pemograman bertujuan khusus (bahasa pemograman yang digunakan untuk tujuan tertentu) Cobol (bisnis), fortran (pemograman saintifik), assembly (aplikasi pemograman mesin komputer), prolog (aplikasi kecerdasan buatan) b. Bahasa pemograman bertujuan umum : pascal, C, C++, basic 2. Berdasarkan kedekatan dengan manusia 1. Bahasa tingkat rendah (low level programming language) yaitu: bahasa pemograman yang dirancang agar setiap intruksinya langsung dikerjakan oleh komputer (menggunakan kode 0 dan 1). sifat : machine dependet (bahasa pemograman suatu jenis komputer akan berbeda dengan jenis lainnya) Contoh: bahasa assembly 3. Bahasa tingkat tinggi (high level programming language), yaitu : bahasa pemograman yang dirancang agar lebih dimengerti oleh manusia (lebih manusiawi). sifat: semua jenis komputer dapat menggunakan bahasa pemograman yang sama Contoh: Fortran, C, C++, Pascal, Cobol, basic, dll 1. Struktur Teks Algoritma a. Judul Adalah bagian yang terdiri atas nama program dan penjelasan (spesifikasi) tentang program tersebut. Nama program sebaiknya menrepresentasikan apa yang dilakukan oleh algoritma b. Deklarasi Digunakan untuk mengumumkan sebuah nama yang dipakai dalam algoritma beserta propertinya (misalnya: tipe). Nama-nama yang dimaksud adalah, nama konstanta, nama peubah, nama prosedur. c. Algoritma Bagian yahg berisi langkah-langkah penyelesaian yang digunakan berupa pernyataan-pernyataan. 2. Notasi Algoritma a. Diagram Alir (Flow Chart) Diagram alir atau flow chart adalah tehnik yang digunakan untuk mendeskripsikan suatu algoritma dengan menggunakan simbol-simbol gambar 1. Kotak mulai/berhenti Mulai, berhenti mulai berhenti 2. Masukan Kotak masukan : untuk membaca data yang diberikan pada suatu variabel Masukan a 3. Kotak Penugasan Kotak penugasan : untuk melakukan perhitungan matematis yang hasilnya diberikan pada suatu variabel x 2 x a + b 4. Keluaran (ouput) Kotak keluaran digunakan untuk mencetak atau sebagai putput dari algoritma Contoh. cetak x 5. Kotak Keputusan Kotak keputusan digunakan untuk memutuskan arah atau percabangan yang diambil sesuai dengan kondisi yang disyaratkan. contoh tidak kondisi ya 6. Kotak Pengulangan Kotak pengulangan digunakan untuk pengulangan yang diambil sesuai dengan kondisi yang disyaratkan. contoh kondisi i i+ 1 7. Kotak Penghubung Kotak digunakan untuk menyambung sebuah algoritma yang terputus, misalnya disebabkan oleh pergantian halaman. b. Pseudocode pseudocode adalah teknik penulisan algoritma dengan menggunakan sintak secara langsung Contoh. sebuah pernyataan dalam notasi deskriptif: gantikan nilai 2 ke x maka pseudo-code dalam notasi algoritmik adalah: x2